类的封装

  1. 定义:将类的一些信息隐藏起来,不允许外部的程序直接的访问,而是通过该类提供的一些方法来获取
  2. 好处:只能通过特定的法方法访问数据,保护了数据,
  3. 实现封装的步骤:
  • 修改属性的可见性:(一般类属性用private)
  • 创建访问和修改的方法: getter+setter
  • 在getter或者setter中加入一些条件语句
package.com.love

public class Telephone{
private float screen;
private float cpu;
//获取screen的法方法
public float getScreen(){ }
//settter方法
public void setScreen(float newScreen){
screen=newScreen
}
}
注释:一般我们采用this方式代表当前对象,所有
this.screen = newScreen
  1. 包 (一般小写)
  • 包的作用:管理java文件以及解决同名文件的冲突
  • 定义:package 包名

    注:必须放在java源程序的第一行,包名间用“.”隔开

    e:package.love.myClass
music:
com.love.music.myClass
vodio:
com.love.video.myClass
系统中的包
java.功能.类、
java.lang.类 基础的java语言类
java.util.类 工具类
java.io.类 输入输出
  • 包的使用
1. 采用import 关键字 导入包
import com.love.music.myClass
2. 加载这个包下所有的类
import com.love.music.*
  • 访问修饰符
private: 只是本类种
默认:本包 本类
protected :本包 本类 子类
public 全部
  • 内部类

    好处:更好的封装,访问外部类的私有数据

    ,最常见的是成员内部类(普通内部类)
public class Outer{

    private int a =1;
public class Inner{
int b= 2;
public void test(){
System.out.println("a"+a)
System.out.println("b"+b)
}
}
public static void main(String[] args){
Outer o = new Outer();
//必须使用外部类对象创建内部类对象
Inner i = o.new Innter()
i.test()
}
}
访问外部类的属性: Outer.this.b

《温故而知新》JAVA基础四的更多相关文章

  1. Java基础(四) StringBuffer、StringBuilder原理浅析

    StringBuilder与StringBuffer作用就是用来处理字符串,但String类本身也具备很多方法可以用来处理字符串,那么为什么还要引入这两个类呢? 关于String的讲解请看Java基础 ...

  2. java 基础 四种权限修饰符

    /** * Java有四种权限修饰符: * public > protected > (default) > private * 同一个类 YES YES YES YES * 同一个 ...

  3. Java基础-四要素之一《继承》

    继承的概念: 继承在本职上是特殊——一般的关系,即常说的is-a关系.子类继承父类,表明子类是一种特殊的父类,并且具有父类所不具有的一些属性或方法. 继承是所有OOP语言不可缺少的部分,在java中使 ...

  4. Java基础-四要素之一《多态》

    什么是多态 指允许不同类的对象对同一消息做出响应.即同一消息可以根据发送对象的不同而采用多种不同的行为方式.(发送消息就是函数调用) 多态是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的 ...

  5. Java基础(四)-异常处理机制及其设计

    本篇主要是记录自己所理解的Java异常处理机制(基于jdk1.7)以及怎么去处理和设计异常.还记得当初学习Java异常这块的时候都没怎么注意它的用途,以为就是简单的处理下异常,我避免程序出现这样错误就 ...

  6. Java基础-四要素之一《封装》

    封装从字面上来理解就是包装的意思,专业点就是信息隐藏,是指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体,数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保 ...

  7. Java基础-四要素之一《抽象》(接口)

    抽象的概念就是抽象出共同属性:成员变量和方法 定义抽象使用abstract关键字定义抽象类和方法 抽象类 abstract class 包含抽象方法的类,叫抽象类. 所以抽象类可以有private等多 ...

  8. java基础-四种方法引用

    实例 直接三角形,通过两边算第三边,目的是为了如何使用这几种方法引用.代码中多有些不合适,尽情原谅. 静态方法引用 接口的参数列表与类中的具体实现方法的参数列表一样,返回值一致. 调用 //静态引用 ...

  9. java 基础四

    1 for循环嵌套 简而言之,就是一个for循环语句里面,还有一个for循环语句. 外层循环,每循环一次,内层循环,循环一周. 示例 package java003; /** * 2017/9/1. ...

随机推荐

  1. eclipse连接mysql数据库实现怎删改查操作实例(附带源码)

    package model; public class User { private int id; private String name; private String password; pub ...

  2. Android无法删除项目+导入项目报错

    Android无法删除项目+导入项目报错 Android无法删除项目:关闭eclipse或关闭电脑,然后重启,继续删除就可以了 导入项目报错:右键–>配置–>中就可以看到了,更改一下就可以 ...

  3. ML.NET 0.10特性简介

    IDataView被单独作为一个类库包 IDataView组件为表格式数据提供了非常高效的处理方式,尤其是用于机器学习和高级分析应用.它被设计为可以高效地处理高维数据和大型数据集.并且也适合处理属于更 ...

  4. ios证书生成

    iOS有两种证书和描述文件: 证书类型 使用场景 开发(Development)证书和描述文件 用于开发测试 发布(Distribution)证书和描述文件 用于提交Appstore 准备环境 必需要 ...

  5. 11.0-uC/OS-III就绪列表(优先级)

    准备运行的任务被放置于就绪列表中.就绪列表包括2个部分:位映像组包含了优先级信息,一个表包含了所有指向就绪任务的指针. 1.优先级 图6-1到6-3显示了优先级的位映像组.它的宽度取决于CPU_DAT ...

  6. Ceph与Gluster之开源存储的对比

    一.Ceph与Gluster之开源存储的对比 一.Ceph与Gluster的原理对比 Ceph和Gluster是Red Hat旗下的成熟的开源存储产品,Ceph与Gluster在原理上有着本质上的不同 ...

  7. JavaScript基础理解及技巧(入门)

    1.java和JavaScript的区别: (1)js只需要解释就可以执行了,而java需要先编译成字节码文.JavaScript的运行只需要浏览器的支持,而java的运行需要JVM(java虚拟机) ...

  8. Java package can not import alias

    you can not do "import x as y;" in Java. What you CAN do is to extend the class, or write ...

  9. from dns.resolver import Resolver ImportError: No module named dns.resolver

    from dns.resolver import Resolver ImportError: No module named dns.resolver python2运行BBScan时提示: from ...

  10. 020-Json结构数据序列化异步传递

    C#中将.Net对象序列化为Json字符串的方法: JavaScriptSerializer().Serialize(p),JavaScriptSerializer在System.Web.Extens ...