Java之抽象和封装
① 如何从现实世界中抽象出类?
根据软件开发需求: 发现类-->发现类的属性-->发现类的方法
② 构造方法的作用和特点是什么?
作用:在创建对象时执行一些初始化操作
特点:名称和类名相同,没有返回值类型
1 public class Text 2 { 3 private int id; 4 private String name; 5 6 public Text()//无参构造方法 7 { 8 9 } 10 11 public Text(int id, String name)//有参构造方法 12 { 13 super(); 14 this.id = id; 15 this.name = name; 16 } 17 }
③ 什么是默认的构造方法?
在没有给类提供任何构造方法时,系统会提供一个无参的方法体为空的默认构造方法
④ 什么是方法重载?
如果一个类中包含了两个或两个以上的方法,他们的方法名相同,方法参数个数或参数类型不同,则称该方法被重载了,这个过程称为方法重载
构造方法和成员方法都可以被重载
1 public class Text 2 { 3 private int id; 4 private String name; 5 public Text() 6 { 7 8 } 9 //构造方法重载:方法名相同参数列表不同(参数个数和参数类型) 10 public Text(int id) 11 { 12 super(); 13 this.id = id; 14 } 15 16 public Text(int id, String name) 17 { 18 super(); 19 this.id = id; 20 this.name = name; 21 } 22 //成员方法重载 23 public void method() 24 { 25 26 } 27 public void method(String para) 28 { 29 30 } 31 public void method(int para) 32 { 33 34 } 35 }
⑤ 如何实现类的封装?
1、修改属性的可见性来限制对属性的访问
2、为每个属性提供Set和Get方法用于对这些属性的存取
3、在赋值方法中加入对属性的存取控制语句
1 public class Text 2 { 3 //修改属性的可见性 4 private int id; 5 private String name; 6 //提供Get/Set方法 7 public int getId() 8 { 9 return id; 10 } 11 public void setId(int id) 12 { 13 this.id = id; 14 } 15 public String getName() 16 { 17 return name; 18 } 19 public void setName(String name) 20 { 21 this.name = name; 22 } 23 }
⑥ 封装的好处是什么?
1、隐藏类的实现细节
2、让使用者只能通过程序规定的方法来访问数据
3、可以方便的加入存取控制语句,限制不合理操作
4、代码复用
⑦ 判断方法重载的依据是什么?
在同一个类中 方法名相同 方法参数个数或类型不同 与权限修饰符和返回值类型无关
⑧ 什么是类方法?什么是类变量?
static修饰的属性和方法称为类属性和类方法,不用Static修饰的属性和方法称为实例属性和方法
1 public class Text 2 { 3 //类属性 4 public static int age; 5 //实例属性 6 public String name; 7 //类方法 8 public static void method() 9 { 10 11 } 12 //实例方法 13 public void me() 14 { 15 16 } 17 }
⑨ static修饰符的含义和相关的知识点?
1、static可以用来修饰属性、方法和代码块
2、加载类的过程中,完成静态变量的内存分配,在执行静态块
3、类属性、类方法可以通过类名和对象名访问
4、类方法只能访问类属性和其他类方法
⑩ 请说出四个常用的访问权限修饰符?
1、private:类可见性
2、default:包可见性
3、protected:同一个包中的类访问,同一个项目不同包中的子类访问
4、public:同一个项目中所有类访问
◆ 在java中this关键字的含义是什么?
this关键字是对一个对象的默认引用。每个实例方法内部都有一个this引用变量,指向调用这个方法的对象
this调用成员变量,解决成员变量和局部变量的同名冲突
this调用成员方法
this调用重载的构造方法,只能在构造方法中使用,必须是构造方法的第一条语句