对象和类
对象:对象是类的一个实例,有状态和行为。
每个对象两个特征:属性,行为
例如:一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
类:具有相同属性和方法的一组对象的集合
类的定义步骤:①定义类 ②编写类的成员变量 ③编写类的成员方法
例:class person
{ string name;
int age;
void speak()
}
对象的引用性质:对象名表示一个引用。不是将对象内的内容进行赋值,只是将引用赋值。
如: Person p1 = new Person( )的内存分配情况。
类的三大特性:封装,继承,多态
封装:简单地说,就是对需要隐藏的代码数据进行保密隐藏,对不同程度的访问权限进行不同级别的保护。
继承:继承就是由已经存在的类创建新类的机制、在已经存在的类的基础上扩展功能,即父类子类。
多态:多态是指父类的方法被子类重写时,可以各自运行自己的功能行为。
当局部变量和全局变量重名时:this可以看作一个变量,它的值是当前对象的引用
static:用于静态比变量
{……………
[return语句;]
}
父类子类:
super, extends表示当前类的直接父类。如果想访问被子类隐藏的变量或被重写的方法,则可以通过关键字super实现相应的访问。
如果父类和子类中都定义了初始化器,则构造子类对象时,调用顺序为: 父类的初始化器→父类的
构造方法→子类的初始→化器子类的构造方法
本质:
01、父类的私有成员可以被子类继承, 但只能通过继承自父类的并且子类可以访问的方法(setter和getter访问器)间接访问。
02、类中的公有成员可以被子类中的方法直接访问,在子类类体外可以通过子类对象访问。
03、父类与子类在同一个包中,则父类中的保护成员可以被子类中的方法直接访问,在子类类体外可以通过子类对象访问。
04、父类与子类不在同一个包中,则父类中的保护成员可以被子类中的方法直接访问,但在子类类体外不可以通过子类对象访问。
例:public class People {
//1.成员变量
String name, sex;private int age;
//2.构造方法
//3.成员方法
public int getAge() {
íreturn age;}
public void setAge(int age) {
this.age = age;}
public void show( ){
System.out. println("姓名: "+name+",性别: "+sex+",年龄 : "+age);}
新建class
public class Demo505Constructor {
public static void main(String[] args) {
People p1=new People();
p1. show(); }
}
总结说明:
1)访问权限
public > protected >默认的> private2)返回类型
void: 不需要返回值,有输出语句
任意类型:基本数据类型、引用数据类型
3)方法名
合法的标识符
首字母小写,若干个单词,后面的单词首字母大写setDefaultCloseOperation( )
4)形式参数
可以没有,可以有1个,可以有多个
还可以有不定个void f(int... x)
f(2)f(2,3) f(2,3, 4)
5)方法体
是否有return语句
6)this.,static
7)setter设置器和getter访问器
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)