java程序的封装和隐藏

java程序的封装和隐藏,第1张

java程序的封装和隐藏

1.Java规定的4种权限(从小到大排列):private、缺省、protected 、public

2.4种权限可以用来修饰类及类的内部结构:属性方法、构造器、内部类

3.具体的,4种权限都可以用来修饰类的内部结构:属性、方法、构造器、内部类
        修饰类的话,只能使用:缺省、public

首先声明一个Animal类,其中包括name、age、legs属性。

age和legs属性为private权限(即只能在自己的类中使用)

String name;
private int age;
private int legs;//腿的个数

其中legs的值需要进行规定,因为legs在正常情况下都应该是正偶数。所以首先要对legs的值进行规定并返回。

    public void setLegs(int l) {
		if(l>0 && l%2 == 0) {
			legs = l;
		}else {
			legs = 0;
		}
	}
	
    public int getLegs() {
		return legs;
    }

与此同时,在main方法中首先对Animal类进行实例化

Animal a = new Animal();

因为Animal类的legs属性是private权限,所以在main方法中要调用

a.setLegs(6);

最后输出时:在main方法中调用Animal类中的show()方法

public void show() {
		System.out.println("名字是="+name+"t年龄="+age+"tt腿的个数="+legs);
}

调用格式为

a.show();

而对于age属性的方法来说,简单一些

    public int getAge(){
		return age;
	}
	public void setAge(int a){
		age = a;
	}

同时,从这个程序中也能看出getAge()不需要形参,但是setAge(int a)需要,且没有返回值。

整体代码如下所示

public class AnimalTest {
	public static void main(String[] args) {
		Animal a = new Animal();
		
		a.name = "花花";
		//a.age = 1;
		//a.legs = 4;//The field Animal.legs is not visible
		
//		a.show();
		a.setLegs(6);
		a.show();
		
//		a.legs = -4;//The field Animal.legs is not visible
		a.show();
		System.out.println(a.name);
	}
}
class Animal{
	String name;
	private int age;
	private int legs;//腿的个数
	
	public void setLegs(int l) {
		if(l>0 && l%2 == 0) {
			legs = l;
		}else {
			legs = 0;
		}
	}
	
	public int getLegs() {
		return legs;
	}
	
	public void eat() {
		System.out.println("动物进食");
	}
	public void show() {
		System.out.println("名字是="+name+"t年龄="+age+"tt腿的个数="+legs);
	}
	
	//提供关于属性age的get和set方法
	public int getAge(){
		return age;
	}
	public void setAge(int a){
		age = a;
	}
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5709914.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-18

发表评论

登录后才能评论

评论列表(0条)

保存