java-对象、类、构造方法、接口笔记

2018-09-08  本文已影响0人  SPONGE_KE

1、类、对象定义与区别

类是静态定义

对象是动态实例

程序代码操作的是对象而非类

建模得到的是类而非对象

联系: 类是对象的定义

            类存在的目的是实例化得到对象

使用new关键字创建对象

通过“.”---  成员访问符,操作对象

当一个类没有显式声明一个构造方法的时候,系统会有一个默认的无参构造方法

构造方法的作用:对属性进行初始化

2、this关键字

在类的方法中使用this关键字代表的是调用此方法的对象的引用

this可以看作是一个变量,它的值是当前对象的引用

使用this可以处理方法中的成员变量和形参同名的问题

当在方法内需要用到调用该方法的对象时,就可用this

在类的构造方法中可以调用this([参数列表])来调用该类的指定构造方法

3、(1)static 关键字

用来修饰类的成员-修饰成员变量的称之为类变量(静态变量)

修饰成员方法的称之为类方法(静态方法)

用来修饰语句块-称之为静态代码块。先于构造方法之前执行,只会执行一次,用来对静态成员做初始化

静态修饰的成员被所有的对象共享

调用时直接通过类名.成员来进行访问

       (2)static关键字注意事项

静态方法中只能访问外部的静态成员

静态方法中不能访问非静态的变量

静态方法中不能出现this关键字

重载:同一类中,同名不同参的方法称为重载方法

访问同名变量时,

super:父类对象的引用

this:当前对象的引用

final 修饰的变量是一个常量

4、构造方法:方法名和类名一致    作用:对属性初始化

                       方法没有返回类型,void也不能有 

       抽象类:用abstract修饰的类,不可以直接创建对象 

每个class必须拥有构造方法,构造方法不写也有

编译的时候,javac会自动检查类中是否有构造方法

如果有,就用你写的

如果没有,编译器就会自动添加一个构造方法

子类中所有的构造方法无论重载多少个,第一行必须是super()

如果父类有多个构造方法,子类任意调用一个就可以

super语句必须是构造方法第一行代码

5、接口定义:成员方法全抽象、不能定义带有方法体的方法

public abstract 返回值类型 方法名字(参数列表)

接口里不可以使用其他权限 只能用public

接口中成员变量的定义要求:必须定义为常量

                             固定格式:public static final 数据类型 变量名=值

6、多态性指:同一操作作用于某一类对象,可以有不同的解释,产生不同的执行结果。

多态存在必要条件:

1、需要存在继承和实现关系

2、同样的方法调用而执行不同操作,运行不同代码(重写操作)

3、在运行时父类或者接口的引用变量可以引用其子类的对象

多态中成员特点:

成员变量:

编译时参考父类中有没有这个变量,如果有,编译成功,没有编译失败

运行时候,运行的是父类中的变量值

成员方法:

编译时参考父类中有没有这个方法,如果有编译成功,没有编译失败

运行的时候,运行的是子类的

关键字,instanceof,比较引用数据类型,只能对有继承关系的类可用

图1
上一篇 下一篇

猜你喜欢

热点阅读