JAVA this关键字和JAVA构造器setter的选用以及JAVA的继承思想和
JAVA this关键字和JAVA构造器setter的选用以及JAVA的继承思想和方法覆盖JAVA的抽象方法和抽象类以及Object类的常用方法
this关键字的使用
作用:其实就是访问当前类的成员变量 还有就是调用当前类的构造器
this的第一个用法
public class Cat(){
private String name;
private int age;
//此时定义有参数和无参数构造器
public Cat(){}
public Cat(String name,int age){
this.name = name;
this.age = age;
}
}
此时直接上个图分析一下this的作用 this就是直接指向成员变量
this的第二个作用
public class Cat(){
private String name;
private int age;
//此时定义有参数和无参数构造器
public Cat(){
this("小猫",18);
}
public Cat(String name,int age){
this.name = name;
this.age = age;
}
}
解析:在第一个构造器使用this方法 代表调用第二个有参数构造器,此时用
无参数构造器初始化对象自带 小猫 和 18
构造器以及setter方法的选用
构造器和setter都是可以给对象设置值的,但是还是有区别的
构造器:构造器就是在创建对象的时候直接赋值一次,之后便不可以
setter方法: 可以为对象多次设置值
继承
作用:解决代码重复的问题
语法:类名1 extends 类名2(被继承的类){}
其实继承就是因为有太多的重复代码了,将一些类都有的字段或者方
法放在一个父类里面就可以省去再写一遍了,实际上就是省代码,和面向对
象的思想也是相互对应的也是相互对应的
子类可以继承到父类的那些成员呢:
1:所有不是private修饰的成员 也就是包括字段和方法都是可以的
方法覆盖
作用:当子类存在一个和父类一模一样的方法时,我们就称之为子类覆
盖了父类的方法,也称之为重写
怎么用什么时候用
1:当父类成员中方法不满足子类要求的时候可以用方法覆盖的方法来覆盖
父类的方法,但是此时要调用父类的方法就要使用super关键字了
2:怎么用--就直接打一个返回值(这个与相同或者是其子类),名称,形式参
数都一样的方法放在子类里面就可以了
3:此时若要方法父类的方法那么就使用super
super.父类方法名(); //调用父类被覆盖的方法
抽象方法和抽象类
作用:抽象方法的意义在于,规定了他的所有子类必须拥有一个这样子的方法,或者提供一个这样子的服务,但是实现这个方法的方式,会因为子类的不同的结构而有所不同。
注意:如果子类不继承他的方法那么子类就必须是一个抽象类
语法:
public abstract class 类名(){
public abstract double getArea(); //此方法无方法体
}
Objec类和常用方法
什么是Object类; Object本身表示对象的意思,是Java中的根类,要么是一个类的直接父类,要么就是一个类的间接父类。所有的类都可以调用Object方法
==符号比较的东西是什么 和equals有什么区别
对于数值: ==符号比较的时候两个数值是否相同
对于引用: == 符号比较的是两个引用是否相同
注意:对于==符号String进行了方法重载 比较的是数值相同
equals符号比较的是什么东西
对于数值:比较的是两个数值类型相同(不会进行自动转换),数值也要相同
对于引用:只有比较的两个对象指向同一个引用的时候才返回true
JAVA this关键字和JAVA构造器setter的选用以及JAVA的继承思想和相关教程