疯狂java


您现在的位置: 疯狂软件 >> 新闻资讯 >> 正文

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调用重载的构造方法,只能在构造方法中使用,必须是构造方法的第一条语句