封装(面向对象)
2015-07-08 21:06
169 查看
class Person { int age; void speak() { System.out.println("age="+age); } } class PersonDemo { public static void main(String[] args) { Person p=new Person(); p.age=55; p.speak(); } }//这样虽然可以 若吧age赋值为负数,也会打印出来
class Person { /* private :私有,权限修饰符:用于修饰类中的成员(成员变量,成员函数) 私有只在本类中有效 将age私有化以后,类以外即使建立的对象也不能直接访问了; 但是人应该有年龄,就需要在Person类中提供对应访问age的方式 注意:私有仅仅是封装的一种表现形式; 之所以对外提供访问方式,<u>就因为可以在访问方式中加入逻辑判断等语句。</u> 对访问的数据进行操作,提高代码的健壮性。 */ private int age; public void SetAge(int a) { if(a>0&&a<130) age=a; else System.out.println("feifa age"); } /*
public int GetAge() { return age; }//这种方法也可以
*/
void speak() { System.out.println("age="+age); } } class PersonDemo { public static void main(String[] args) { Person p1=new Person();
Person p2=new Person(); p1.SetAge(-20);
p2.SetAge(20);
p1.speak();
p2.speak(); } }
相关文章推荐
- 《opencv入门》
- 迪杰斯特拉邻接矩阵存储方式
- Android帧率变慢的原因
- [leedcode 26] Remove Duplicates from Sorted Array
- 输入一个10进制数字,请计算该数字对应二进制中0的个数,注意左数第一个1之前的所有0都不需要计算。不需要考虑负数的情况。
- C/S与B/S架构的产品进行系统测试的区别
- 大公司里怎样开发和部署前端代码?
- 百度地图api里面的坑
- C语言的32个保留字
- Scrapy的Ip代理的配置(未完成)
- 求整数的Root:给定正整数,求每位数字之和;如果和不是一位数,则重复
- [LeetCode]Palindrome Number
- Android中AndroidManifest.xml文件解析
- 弗洛伊德算法
- 图片上传处理Server端
- 面试题26:复杂链表的赋值
- 二维码生成Zxing.net DEMO
- 进制转换(数据存储)
- 《opencv入门》
- 包含min函数的栈