体验Java的封装性

 1 package com.cnblogs.java;
 2 //体验Java的封装性
 3 /*
 4  * 如下的人类年龄赋值-300岁,显然很不合理,这种直接对类的属性赋值,有时候虽然不合理但却会编译通过。
 5  * 所以我们考虑不让对象直接操作属性,而是通过对象调用方法来对属性赋值,在方法中我们就可以进一步限制
 6  * 赋值的大小问题。
 7  * 解决办法:将类的属性私有化,通过共有的方法来调用修改类的属性。(在方法中限制修改的值)
 8  */
 9 public class TestPerson {
10     public static void main(String[] args) {
11         Person p=new Person();
12 //        p.name="康师傅";
13 //        p.age=-300;
14         p.setName("小明");
15         p.setAge(12);
16         //这种编译通过却不合理的赋值方法要避免
17
18         p.info();
19     }
20 }
21 class Person{
22     private String name;//将属性私有化,避免对象直接调用属性。
23     private int age;
24     public void info(){
25         System.out.println("人的名字是:"+name+" 年龄是:"+age);
26     }
27     public String getName(){//获得名字
28         return name;
29     }
30     public int getAge(){//获得年龄
31         return age;
32     }
33     public void setName(String n){
34         if(n.length()>0 && n.length()<8){
35             name=n;
36         }else{
37             System.out.println("请输入一个简短的名字!");
38         }
39     }
40     public void setAge(int a){
41         if(a>0 && a<130){
42             age=a;
43         }else{
44             System.out.println("这不是一个人能达到的年龄!");
45         }
46     }
47 }

运行结果:

人的名字是:小明 年龄是:12

时间: 2024-08-03 06:59:44

体验Java的封装性的相关文章

[ Java学习基础 ] Java的封装性与访问控制

Java面向对象的封装性是通过对成员变量和方法进行访问控制实现的,访问控制分为4个等级:私有.默认.保护和公有,具体规则如下表: 1.私有级别 私有级别的关键字是private,私有级别的成员变量和方法只能在其所在类的内部自由使用,在其他的类中则不允许直接访问.私有级别限制性最高.示例代码如下: 1 // PrivateClass.java文件 2 public class PrivateClass { 3 private int x; 4 5 public PrivateClass() { 6

Java10-java语法基础(九)——java的封装性

一.Java的三大特性:封装.多态.继承 封装:通过类封装对象的数据成员和成员方法,保证只有可信的类或者对象能够访问这些方法和数据成员,对不可信的类或者对象进行信息隐藏. 继承:继承是从已有的类中派生出新的类,新的类能吸收已有类的数据成员和方法,并能扩展新的能力. 多态:多态性是指不同的对象,收到同一消息可以产生不同的结果. 二.面向对象编程的封装性 封装的实现:通过private关键字实现 1.封装数据成员和成员方法 (1)封装数据成员:一般情况下,没有特殊说明,类的数据成员都是私有的 pri

Java的封装性、继承性和多态性

封装 封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据.对外界而已它的内部细节是隐藏的,暴露给外界的只是它的访问方法. 封装的优点: 便于使用者正确.方便的使用系统,防止使用者错误修改系统属性: 有助于建立各个系统之间的松耦合关系:提高软件的可重用性: 降低了大型系统的风险,即便整个系统不成功,个别独立的子系统有可能还有价值. 封装的原则又是什么呢,现在我们在这说下封装的两大原则: 把尽可能多的东西藏起来,对外提供简洁的接口: 把所有的属性封装起来. 继承

Java面向对象设计主要有三大特征:封装性、继承性和多态性

一  封装性   1.1  概念:它是将类的一些敏感信息隐藏在类的类部,不让外界直接访问到,但是可以通过getter/setter方法间接访问. 1.2  目的:我们可以并且有可能在方法中,添加自己的限制,保证数据的有效性:从某种程度上说,封装也提高了代码的健壮性.安全性. 1.3  实现步骤:所有的成员变量全部私有化,格式 :private   数据类型  变量名  ,提供访问成员变量的getter/setter方法. 二  继承性   2.1  概念:子类通过一种方式来接受父类所有的公有的,

JAVA学习第十二课(关键字三final:针对extends打破封装性)

final: final 可以修饰类.方法.变量 final 修饰的类不可以被继承 final 修饰的方法不可以被覆盖 final 修饰的变量是一个常量,只能被修饰一次 内部类只能访问被final修饰的局部变量 继承的弊端: 如下代码: class father { void show() { System.out.println("ni hao ");//父类的方法已经调用了底层系统 } } class son extends father { void show() { Syste

java面向对象基础 封装性

对于刚学习java的人来说可能不知道 封装性的好处,感觉麻烦,封装有很多好处.最主要的目的就是 保护内容.保证某些属性或者方法不被外部看见. 类的封装性即不能让外面的类随意修改一个类的成员变量: 在定义一个类的成员(包括变量和方法),使用private关键字说明这个成员的访问权限,只能被这个类的其他成员方法调用,而不能被其他的类中的方法所调用: 为实现封装性,常将类的成员变量声明为private,再通过public的方法来对这个变量进行访问.对一个变量的操作,一般都有 读取和赋值操作,我们一般定

Java封装性及属性的封装

一.封装的概念  1.封装性是面向对象思想的三大特征之一. 2.封装就是隐藏实现细节,仅对外提供访问接口. 封装有: 属性的封装,方法的封装,类的封装 ,组件的封装,模块化的封装,系统级封装 二.封装的好处  1.模块化 2.信息隐藏 3.代码重用 4.插件化易于调试 5.具有安全性 三.属性的封装  也叫属性的私有化. 例: 封装之前: class Person{     String name; int age; } 封装之后: class Person{     private Strin

Java基础——封装、继承、多态

Java基础--封装.继承.多态 --小实例快速成长 抽象: 1.目的:将复杂的东西简单化,将繁乱的内容有序化. 2.过程:对相同.相似的东西合而为一,对不同的内容进行归门别类. 3.结果:类.接口. 封装: 1.目的:化零为整,将零散的内容进行归属,进行权限控制. 2.过程:将某对象的属性.方法(功能)统一到其名下,并分别设置.适当的权限进行控制管理. 3.结果:对象,接口. 继承: 1.求大同存小异:在一个系列内,大部分都有的内容,就划归父类:子类将父类的内容继承过来,可以有自身的一些发展和

七:Java之封装、抽象、多态和继承

本文章介绍了关于Java中的面向对象封装.抽象.继承.多态特点 Java面向对象主要有四大特性:封装.抽象.继承和多态. 一.封装 封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成"类",其中数据和函数都是类的成员. 在面向对象语言中,封装特性是由类来体现的,我们将现实生活中的一类实体定义成类,其中包括属性和行为(在Java中就是方法),就好像人类,可以具有name,sex,age等属性,同时也具有eat(),sle