Live2D
复制代码

02-面向对象的封装性

面向对象的封装性

把客观的事物封装成抽象的类,并且隐藏对象的属性和实现细节,仅对外提供公开的接口。


//定义一个顾客类型
/*
 *    面向对象的封装性指的是:
 *    1.属性私有化
 *    2.对外提供公开的setter和getter
 *    
 *    set和get方法的方法名应遵循规范:get加属性且第二个及以后单词首字母大写
 */
package c面向对象的封装性;

public class Customer {
	
	    //属性
	//成员变量  实例变量  非静态变量
	    private int age;//private修饰的数据只能在本类中访问,所以在定义的引用类中
	     //提供或者说定义几个公开的方法,这里定义两个方法去让外部其他程序访问
	    
	    //定义两个公开的方法
	    //set
	    public void setAge(int a){//没有static,该方法是成员方法、实例方法、非静态方法
	    	if(a<=0||a>110){//必须使用“引用.”的方式访问
	    		System.out.println("鸡你太美年龄太大");
	    		return;//加return就是为了停止下面语句的执行
	    	}
	    	age=a;
	    	
	    }
	    
	    public int getAge(){//有返回值没参数
	    	return age;
	    }

}
/*
 *    面向对象的封装性
 */
package c面向对象的封装性;

public class Test01 {
	//程序的入口
	public static void main(String[] args){
		
		//创建Customer类型的对象
		Customer iage =new Customer();
		/*
		//读取(get)
		System.out.println(iage.age);
		
		//赋值(set)
		 iage.age=-15;//因为age没有限制,导致外部程序可以随意访问,age不安全
		 			  //不合法数据
		//读取
	    System.out.println(iage.age);
	    */
		//赋值
		iage.setAge(-566565);
		
		//读取
		System.out.println(iage.getAge());
			
	}

}
posted @ 2021-07-22 22:09  Milen-jie  阅读(43)  评论(0编辑  收藏  举报