java 类,继承,多态,抽象,接口

本文介绍了Java编程中的基本概念,包括类的初始化、成员变量赋值,以及行为的执行方式。讲解了继承的概念,强调了Java的单继承特性以及如何通过super调用父类构造函数。多态的原理和应用被阐述,指出在多态中成员方法会被重写,但成员变量不会。此外,还讨论了抽象类和接口的区别,包括抽象类不能实例化和子类必须重写抽象方法。
摘要由CSDN通过智能技术生成

1、类

java中数据成员能直接赋值如:

public class
{
    private int age=10;
    private int number=32;
}

在创建对象是如果不对数据进行赋值,那么,会自动默认初始化为0

 

 

 数据成员可以直接赋值,但行为不能直接执行,要加方法,如图

 加方法

main()方法中可以直接使用类中的protected和public属性,private属性要通过方法访问 

 

 2、继承

继承要至少两个类,继承格式 public class 子类类名 extends 父类类名,继承不过是减少代码的赘余,减少代码量,相当于将父类中全部代码在子类中重写一遍

 

 

 

java中只能单继承,不能多继承,但可以多层继承,可以,子类继承父类,父类继承祖父类,那么子类既有父类属性,也有祖父类属性

 继承中不能直接访问父类中的private属性,protected和public属性可以直接访问与main()中的一样

子类要用super来调用父类中的带参构造函数

 构造调用先父后子

 3、多态

多态是建立在继承之上的,new哪个类,那么就执行时就用哪个类的方法,但同名时直接使用父类的数据成员,成员方法与成员变量访问不同,因为成员方法有重写,成员变量没有

 父类与子类代码

package inherit;

public class father {

    protected String name="DaMing";
    public int number=12;
    public void display()
    {
        System.out.println(number);
        System.out.println(name);
    }
}


package inherit;

public class son extends father{
    protected String name="LiMing";
    public int number=34;
    public void display()
    {
        System.out.println(number);
        System.out.println(name);

    }

}

多态时使用左编译右执行原则,一定要父类有的子类才可以直接进行new对象直接访问,如图当父类没get()函数而子类有

 

 

 

可以通过强制转换进行修改

 t和b的地址相同,并未开辟新空间占内存

4、抽象类

抽象类用abstract修饰

public abstract class 类名{}
public abstract void display();

 抽象类不一定要有抽象函数,但抽象函数一定要该类为抽象类

 上图抽象类中无抽象函数,下图当普通类有抽象函数

 

 

抽象类不能直接实例化如

public abstract class father{}

father t=new father();是不行的,报错。

继承时,子类要重写父类中的全部抽象函数,或也将子类弄成抽象类,因为,不重写相当于将public abstract void display()抽象函数写在了子类中。

5.接口

接口用关键词interface修饰

public interface 接口名{}

类实现接口用implements 表示

public class 类名 implements 接口名{} 

接口不能实例化,要依照多态的方式,通过实现类对象的实例化,类似与多态,同样要重写 

接口成员变量是能是常量,默认修饰:public static final,无法进行修改,如当接口中int a=7; 再有一条语句a=3;时就会报错。

接口无构造方法,一个类无父类,默认继承Object类

如 public class r(extends Object) implements 接口名{}。

成员方法只能是抽象类,默认修饰符:public abstract 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值