Loading

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

posted @ 2015-04-22 13:27  jwchen  阅读(687)  评论(0编辑  收藏  举报