java八股文面试[java基础]——面相对象特点

这篇具有很好参考价值的文章主要介绍了java八股文面试[java基础]——面相对象特点。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

java八股文面试[java基础]——面相对象特点,java八股文,面试,职场和发展

三大特点: 封装 继承 多态

java八股文面试[java基础]——面相对象特点,java八股文,面试,职场和发展

 java八股文面试[java基础]——面相对象特点,java八股文,面试,职场和发展

java八股文面试[java基础]——面相对象特点,java八股文,面试,职场和发展

面试题:java如何实现多继承(除了使用接口之外)

实现多继承有三个方法

  • 多层继承
  • 内部类
  • 接口

参考 java实现多继承的三种方式

多层继承
​如果要直接继承类,子类是不可以直接多继承的,但是可以通过多层继承来实现多继承,但多层继承一般不建议超过三次。

A 有一个成员变量 num

class A {
    private int num = 10;

    A() {
    }

    public int getNum() {
        return this.num;
    }

    public void fun() {
        System.out.println(this.getNum());
    }
}

B有一个成员变量  name

class B extends A {
    private String name = "张三";

    B() {
    }

    public String getName() {
        return this.name;
    }

    public void fun() {
        System.out.println(this.getNum());
    }
}

C 从B继承(继承了name和num):覆盖name

class C extends B {
    private String name = "刘能";

    C() {
    }

    public String getName() {
        return this.name;
    }

    public void fun() {
        System.out.println(this.getName());
        System.out.println(this.name);
    }
}

测试类:

public class Test {
    public Test() {
    }

    public static void main(String[] args) {
        A a = new A();
        a.fun();
        print(new B());
        print(new C());
    }

    public static void print(A a) {
        a.fun();
    }
}

输出:

10
10
刘能
刘能

java八股文面试[java基础]——面相对象特点,java八股文,面试,职场和发展

内部类: 和组合类型,相当于C包含A 和 B的两个实例对象

class C1 {
    //C类
    private String name = "刘能";

    class OneA extends A {//C中内部类继承A类

        public void printA() {
            System.out.println(this.getNum());
            fun();
        }
    }

    class OneB extends B {//C类内部类继承B类

        public void printB() {
            System.out.println(this.getName());
            fun();
        }
    }

    public void print() {
        //在C类中生成普通方法print()
        new OneA().printA();
        // 匿名实例化OneA类对象并调用printA方法
        new OneB().printB();
    }
}

接口:默认支持多个implements 


//接口实现多继承
interface IA {
    //父接口A(接口为更纯粹的抽象类,结构组成只含全局常量和抽象方法)
    void funA();
}

interface IB {
    //父接口B(接口前添加I用以区分接口)
    void funB();
}

interface CImpl extends IA, IB {
    //接口可继承多个父接口,用,分隔开即可,子接口的命名可选择较为重要的父接口进行命名或自行命名,一般子接口后添加Impl用以区分
    void funC();
}

class Impl implements CImpl {
    //定义类实现接口(也可直接实现父接口(多个))
    public void funC() {
        //抽象方法的实现
        System.out.println("你昨天真好看!");
    }

    public void funA() {
        System.out.println("你今天真好看!");
    }

    public void funB() {
        System.out.println("你明天真好看!");
    }
}

public class Test{
    public static void main(String[] args) {
        Impl im = new Impl();
        // 实例化对象
        im.funA();
        im.funB();
        im.funC();
    }
}

知识来源:

【基础】面向对象_哔哩哔哩_bilibili

【2023年面试】Java面向对象有哪些特征_哔哩哔哩_bilibili文章来源地址https://www.toymoban.com/news/detail-659457.html

到了这里,关于java八股文面试[java基础]——面相对象特点的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端基础面试题八股文

    代码结构: 使页面在没有css的情况下,也能够呈现出好的内容结构 有利于SEO: 爬虫根据标签来分配的权重,因此可以和搜索引擎建立良好的沟通,帮助爬虫抓取更多的有效信息 方便其他设备解析: 如屏幕阅读器、盲人阅读器、移动设备等,以有意义的方式来渲染页面 便于

    2024年02月07日
    浏览(34)
  • Java 面试八股文

    参考: 2023年 Java 面试八股文(20w字)_json解析失败_leader_song的博客-CSDN博客

    2024年02月13日
    浏览(44)
  • Java面试必备八股文

    1.1)Java有哪几种数据类型 基本数据类型:byte(1字节) short(2字节) int(4字节) long(8字节) float(4字节) double(8字节) char(2字节) boolean(1字节) 引用数据类型:String 类 接口 抽象类 枚举 数组 1.2)JVM、JRE和JDK的关系 JVM指的是Java的虚拟机,Java程序需要运行在虚拟机上

    2023年04月08日
    浏览(42)
  • 【八股文篇】Java 面试题

    👉 博主介绍 : 博主从事应用安全和大数据领域,有8年研发经验,5年面试官经验,Java技术专家,WEB架构师,阿里云专家博主,华为云云享专家,51CTO TOP红人 Java知识图谱点击链接: 体系化学习Java(Java面试专题) 💕💕 感兴趣的同学可以收藏关注下 , 不然下次找不到哟

    2024年02月12日
    浏览(38)
  • Java面试八股文宝典:序言

    Java作为一门广泛应用于企业级应用开发的编程语言,一直以来都是技术面试中的重要话题。无论您是刚刚踏入编程世界的新手,还是经验丰富的Java开发工程师,都需要通过面试来展示自己的技能和知识。 在面试中,除了技术知识,还需要展现出解决问题、沟通能力和编程实

    2024年02月09日
    浏览(43)
  • 一天吃透Java面试八股文

    Java是一门面向对象的编程语言 。面向对象和面向过程的区别参考下一个问题。 Java具有平台独立性和移植性 。 Java有一句口号: Write once, run anywhere ,一次编写、到处运行。这也是Java的魅力所在。而实现这种特性的正是Java虚拟机JVM。已编译的Java程序可以在任何带有JVM的平台

    2024年02月05日
    浏览(41)
  • java八股文面试[JVM]——垃圾回收

    参考:JVM学习笔记(一)_卷心菜不卷Iris的博客-CSDN博客 GC垃圾回收 面试题: JVM内存模型 以及分区,需要详细到每个区放什么 堆里面的分区:Eden,survival from to,老年代,各自的特点。 GC的三种收集方法:标记清除、标记整理、复制算法的原理与特点,分别用在什么地方 针

    2024年02月11日
    浏览(35)
  • java八股文面试[JVM]——元空间

    JAVA8为什么要增加元空间 为什么要移除永久代?    知识来源: 【2023年面试】JVM8为什么要增加元空间_哔哩哔哩_bilibili

    2024年02月11日
    浏览(38)
  • 34 道 Java八股文 精选面试题

    java 是一门 开源的跨平台的面向对象的 计算机语言.   跨平台是因为 java 的 class 文件是运行在虚拟机上的,其实跨平台的,而 虚拟机是不同平台有不同版本 ,所以说 java 是跨平台的. 面向对象有几个特点:   1. 封装 两层含义:一层含义是把对象的属性和行为看成一个密不可分的

    2024年02月10日
    浏览(36)
  • java八股文面试[多线程]——自旋锁

    优点: 1.  自旋锁尽可能的减少线程的阻塞, 这对于锁的竞争不激烈,且占用锁时间非常短的代码块来说性能能大幅度的提升,因为自旋的消耗会小于线程阻塞挂起再唤醒的操作的消耗  ,这些操作会导致线程发生两次上下文切换! 2. 非自旋锁在获取不到锁的时候会进入阻

    2024年02月10日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包