【JAVA】抽象和封装
2016-08-26 16:29
274 查看
1、简述从现实世界中抽象出类的步骤。
1、发现类。
2、发现类的属性。
3、发现类的方法。
2、构造方法的作用和特点是什么?
答:构造方法的名称和类名相同,没有返回值类型。构造方法的主要作用就是在创建对象时执行一些初始化操作,例如给成员属性赋值。
3、什么是方法重载?
1、必须在同一个类里。
2、方法名相同。
3、参数列表(方法参数的个数和参数类型)不同。
4、与方法返回值和方法修饰符没有任何关系。
4、如何实现类的封装?
修改属性的可见性来限制对属性的访问。
为每个属性创建一对赋值(setter)方法和取值(getter)方法,用于对这些属性的存取。在赋值方法中,加入对存取的控制语句。
示例;private int age = 0; //年龄,修饰为私有的
//封装
publict int getAge(){ //取值方法
return age;
}
public int setAge(int age){ //赋值方法
//通过条件判断判断赋值是否合理
if(age>100||age<0){
age = 18;
}else{
this.age = age;
};
封装快捷键:ALT+SHIFT+S+R。
注意:
1、封装时如果属性的第二个字母大写,则按原名。
2、封装boolean类型的属性的,get方法以is开头,set不变,如果boolean类型的属性名以is开头,封装时会忽略属性名中的is。
封装的好处:
1、隐藏类的实现细节。
2、让使用者只能通过程序规定的方法来访问数据。
3、可以方法的加入存取控制语句,限制不合理操作。
5、this关键字。
指当前对象的引用。
示例:
//使用this调用成员变量,解决成员变量和局部变量的同名冲突
public void setName(String name){
this.name = name;
//成员变量和局部变量同名,必须使用this
};
//使用this调用重载的构造方法,只能在构造方法中使用,必须是构造方法的第一条语句。
public penguin(String name, String sex){
this.name = name;
this.sex = sex;
};
public Penguin(String name, String sex, int love , int health){
this(name,sex); //调用重载的构造方法
this.health=health;
this.love=love;
};
注意:
1、因为this在对象内部指代自身的引用,所以this只能调用实例变量、实例方法。
2、this不能调用类变量和类方法,也不能调用局部变量。
1、发现类。
2、发现类的属性。
3、发现类的方法。
2、构造方法的作用和特点是什么?
答:构造方法的名称和类名相同,没有返回值类型。构造方法的主要作用就是在创建对象时执行一些初始化操作,例如给成员属性赋值。
3、什么是方法重载?
1、必须在同一个类里。
2、方法名相同。
3、参数列表(方法参数的个数和参数类型)不同。
4、与方法返回值和方法修饰符没有任何关系。
4、如何实现类的封装?
修改属性的可见性来限制对属性的访问。
为每个属性创建一对赋值(setter)方法和取值(getter)方法,用于对这些属性的存取。在赋值方法中,加入对存取的控制语句。
示例;private int age = 0; //年龄,修饰为私有的
//封装
publict int getAge(){ //取值方法
return age;
}
public int setAge(int age){ //赋值方法
//通过条件判断判断赋值是否合理
if(age>100||age<0){
age = 18;
}else{
this.age = age;
};
封装快捷键:ALT+SHIFT+S+R。
注意:
1、封装时如果属性的第二个字母大写,则按原名。
2、封装boolean类型的属性的,get方法以is开头,set不变,如果boolean类型的属性名以is开头,封装时会忽略属性名中的is。
封装的好处:
1、隐藏类的实现细节。
2、让使用者只能通过程序规定的方法来访问数据。
3、可以方法的加入存取控制语句,限制不合理操作。
5、this关键字。
指当前对象的引用。
示例:
//使用this调用成员变量,解决成员变量和局部变量的同名冲突
public void setName(String name){
this.name = name;
//成员变量和局部变量同名,必须使用this
};
//使用this调用重载的构造方法,只能在构造方法中使用,必须是构造方法的第一条语句。
public penguin(String name, String sex){
this.name = name;
this.sex = sex;
};
public Penguin(String name, String sex, int love , int health){
this(name,sex); //调用重载的构造方法
this.health=health;
this.love=love;
};
注意:
1、因为this在对象内部指代自身的引用,所以this只能调用实例变量、实例方法。
2、this不能调用类变量和类方法,也不能调用局部变量。
相关文章推荐
- JAVA的抽象、封装、继承、多态
- 设计模式学习(一):java 面向对象特征:抽象、封装、多态、继承
- Java基础与案例开发详解の抽象和封装
- Java基础 对封装、继承、多态、抽象的理解
- java高级_抽象与封装
- java笔记总结_01_Java入门、_02抽象和封装
- java基础 继承、封装、多态、抽象详解
- java 面向对象三大特性(封装,继承,多态)以及抽象、接口的介绍
- Java基础-OOP特性之封装、继承、多态、抽象
- JAVA之抽象和封装
- java四大特性理解(封装继承多态抽象)
- 非专业码农 JAVA学习笔记 3 抽象、封装和类(2)
- 七:Java之封装、抽象、多态和继承
- 1.javaOOP_Part1_抽象和封装
- Java中的继承、封装、多态、抽象
- 第六讲 Java 四大特性:抽象 封装 继承 多态
- 黑马程序员 Java基础_4 面向对象-抽象与封装
- 黑马程序员<java基础<面向对象(封装,继承,多态,抽象)>>
- java之封装和抽象
- java中,什么是封装,继承,多态和抽象,好处与用法