import com.jackfujia.oo2.Human; public class TestEncapsulation2 { Human h = new Human(); // h.name = "俯卧"; name为默认default属性,不能被不同包的类访问。 //h.height = 100; 不同包的不同类
public class Human{ private int age; //加了private,只能在这个类里面用 String name; //默认default。默认在包里的都能用 protected int height; void sayAge() { System.out.println(age); }
8种基本类型的封装类:Byte,Short,Integer,Long,Float,Double,Boolean,Character.
八种基本数据类型分别是:int、short、float、double、long、boolean、byte、char;
它们的封装类分别是:Integer、Short、Float、Double、Long、Boolean、Byte、Character
封装类也叫包装类,是针对八种基本定义相应的引用类型。
基本数据类型 封装类
boolean Boolean
byte Byte
short Short
int Integer
long Long
char Character
float Float
double Double
???这个问题貌似有点问题
1.首先,八种基本数据类型分别是:int、short、float、double、long、boolean、byte、char;
它们的封装类分别是:Integer、Short、Float、Double、Long、Boolean、Byte、Character。
八种基本数据类型分别是:int、short、float、double、long、boolean、byte、char;
它们的封装类分别是:Integer、Short、Float、Double、Long、Boolean、Byte、Character。
程序设计追求“高内聚,低耦合”。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉。低耦合是仅暴露少量的方法给外部使用,尽量方便外部调用。
编程中封装的具体优点:
1.提高代码的安全性
2.提高代码的复用性
3.“高内聚”:封装细节,便于修改内部代码,提高可维护性
4.“低耦合”:简化外部调用,便于调用者使用,便于扩展和写作。
java中使用“访问控制符”来控制哪些细节需要封装。哪些细节需要暴露的。Java中4种“访问控制符”。分别为:private、default、protected、public,他们说明了面相对象的封装性。
测试案例代码:
package com.jackfujia.oo2;
/**
*
*测试封装
* @author Administrator
*
*/
public class TestEncapsulation {
public static void main(String[] args) {
Human h = new Human();
//h.age = 13; 这里因为下面的age被封装起来了。对其不可见。所以无法调用
h.name = "福福福福福";
h.height = 200;
}
}
class Woman extends Human{
void sayAge2() {
// System.out.println(age); 子类也无法使用父类的私有属性和方法。
}
}
package com.jackfujia.oo;
import com.jackfujia.oo2.Human;
public class TestEncapsulation2 {
Human h = new Human();
// h.name = "俯卧"; name为默认default属性,不能被不同包的类访问。
//h.height = 100; 不同包的不同类
}
class Girl extends Human{
void shenGao() {
System.out.println(height); //不同包的子类可以使用
}
}
package com.jackfujia.oo2;
public class Human{
private int age; //加了private,只能在这个类里面用
String name; //默认default。默认在包里的都能用
protected int height;
void sayAge() {
System.out.println(age);
}
}
封装的使用细节:
类的属性的处理:
1.一般使用private访问权限
2.提供相应的get、set方法来访问相关属性,这些方法通常是public修饰的。以提供对属性的赋值与读取操作。(注意!boolean变量的get方法是is开头。)
3.一些只用于本类的辅助性方法,可以使用private修饰,希望其他类调用的方法用public修饰。
案例小代码:
package com.jackfujia.oo2;
/**
* 仍然测试封装
* @author Administrator
*
*/
public class Person4 {
private int id;
private String name;
private int age;
private boolean man;
public void setName(String name) {
this.name = name;
}
public void setAge(int age) {
if(age >= 1 && age <= 130) {
this.age = age;
}else {
System.out.println("请输入正常的年龄");
}
}
public String getName() {
return this.name;
}
public int getAge() {
return this.age;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public boolean isMan() {
return man;
}
public void setMan(boolean man) {
this.man = man;
}
}
package com.jackfujia.oo2;
/**
*
*测试封装
* @author Administrator
*
*/
public class TestEncapsulation {
public static void main(String[] args) {
Human h = new Human();
//h.age = 13; 这里因为下面的age被封装起来了。对其不可见。所以无法调用
h.name = "福福福福福";
h.height = 200;
Person4 p4 = new Person4();
p4.setAge(14);
p4.setName("我你大爷!");
System.out.println(p4.getName());
System.out.println(p4.getAge());
}
}
class Woman extends Human{
void sayAge2() {
// System.out.println(age); 子类也无法使用父类的私有属性和方法。
}
}
8种基本类型的封装类:Byte,Short,Integer,Long,Float,Double,Boolean,Character.
相关问题推荐
1、打开eclipse,封装首先会通过private私有化变量,限制对类属性的访问2、通过set和get方法设置对每个属性对外访问接口,外部需要改变类的属性,需要通过这些公共public的方法3、这里介绍一个java封装类的实例,创建一个Test雷,对变量进行私有,方法进行公...
Java面向对象的三大特征为:封装、继承和多态。Java中的封装是指一个类把自己内部的实现细节进行隐藏,只暴露对外的接口(setter和getter方法)。封装又分为属性的封装和方法的封装。把属性定义为私有的,它们通过setter和getter方法来对属性的值进行设定和获取...
Java是OO语言,封装是OO的特性,Java封装的原则为Liskov替换原则。Liskov替换原则的正规描述是这样:若对每个类型S的对象O1,都存在一个类型T的对象O2,使得在所有针对T编写的程序P中,用O1替换O2后,程序P行为功能不变,则S是T的子类型。...
Easy Sysprep是一款用于 Windows 操作系统系统部署专业工具,使用人群主要是企业的系统工程师和系统技术爱好者,与 [自由天空综合驱动包] 结合成整套成熟可靠系统部署解决方案。 小编推荐:Easy Sysprep下载SysPacker SysPacker是一款针对于雨林木...