面向对象编程(3.24笔记)
1、构造方法
1、构造方法即public +类名
2、一个类有默认的构造方法,其默认的构造方法内不含有任何的参数,例如平常创建一个对象的时候,用的方法为:类名+对象名称=new 类名();其()里不含有任何东西。如:
package day5;
public class Demo01 {
public static void main(String[] args) {
Demo01 demo01=new Demo01();//创建一个不含有任何参数的对象
}
}
3、当构造方法含有参数时,我们需要在创建对象时(即类名+对象名称=new 类名())要在后面的括号里传入相应地参数。如:
package day5;
public class Demo01 {
String name;
Demo01 demo01=new Demo01("xiaoming");
public Demo01(String name){
this.name=name;
}
}
Demo01 demo01=new Demo01(“xiaoming”);这里面的括号里必须有String类型的参数,否则会报错,因为默认的构造方法已经被修改成了含String字符的方法。同理,当构造方法里的参数是其它类型时,构造对象时也要在括号里输入相应的参数。
4、构造方法可以改变类里面声明的对象的值如:
打印结果为3
5.构造方法的快捷键:Alt+Ins 可以直接创建构造方法,并且用ctrl可用调整参数个数。
引申:在java中,八大基本数据的默认值:int 0,char u0000,boolean false,其它引用类型 为null。
2、类的封装
基本思想:将一个类里面的局部变量全部私有化(即加private),这样在另外一个类中就不能使用该变量,此时只能通过该类的方法来使用或赋值这些变量。这样用户看不到原类里面的数据,只能通过方法访问,以达到封装的目的。如:
注:Alt+Ins快捷键中可以快速创建get、set方法
3、类的继承
定义:子类可以调用父类中的方法,可以调用父类中的变量。如:
package day5;
public class People {
String name;
String sex;
int age;
public void say(){
System.out.println("工作了一天");
}
}
package day5;
public class Woker extends People{
}
package day5;
public class Demo03 {
public static void main(String[] args) {
Woker woker=new Woker();
woker.age=1;
woker.name="小明";
woker.sex="男";
woker.say();
}
}