成员内部类可以继承其他的类,也可以被其它类继承,本文主要说明其它类继承成员内部类的问题. 本文要点如下: 1).成员内部类的子类可以是内部类,也可以不是内部类: 2).当成员内部类的子类不是内部类或子类虽是内部类但与其父类不在同一个外部类时,子类的构造方法第一句要显式添加如下的语句: 外部类对象引用.super(参数); 这里的外部类指父类所在的外部类: 3).编译器默认给成员内部类的构造方法传入一个参数,该参数是内部类所依附的外部类对象的引用: 注:本文涉及到的类都是非静态类. 作者: 蝉蝉…
Java学习笔记之---内部类 (一)成员内部类 内部类在外部使用时,无法直接实例化,需要借助外部类信息才能实例化 内部类的访问修饰符可以任意,但是访问范围会受到影响 内部类可以直接访问外部类的成员,如果出现重名属性,优先访问内部类中定义的 可以使用外部类.this.成员的方法,访问外部类中同名的信息 外部类访问内部类信息,需要通过内部类实例,无法直接访问 内部类编译后.class文件命名:外部类$内部类.class 实例 public class People { private String…
一.封装: 封装的概念: - 合理的隐藏:隐藏不想被外界操作的Field.方法.构造器 - 合理的暴露:一般就是希望给别人调用的方法 e.g:显示器(按键暴露出来操作,但实际的东西/细节方法被隐藏起来) 封装的目的: - 简化编程(不去去找显示器的内部调,直接按键调整即可) - 更好的保证对象的完整性 为了实现隐藏,我们有4个修饰符: private - 仅限当前类访问权限 无修饰符/默认  - 包访问权限(同一个包内) protected   - 子类访问权限(本类能访问.同一个包也能访问)…
内部类 形式:把一个类定义在一个类的内部. 分为:成员内部类和匿名内部类重点掌握 a) 成员内部类 b) 静态成员内部类 c) 匿名内部类 d) 局部内部类 (1)成员内部类: Java的语言是面向对象的语言,有一个对象必须先创建类.当你类中的某个属性是你自己特有的,某些行为是属于你这个类特有的.通过成员内部类的方式来创建出这种一次性的属性和方法 成员内部类也会适用于线程的情况下. 代码: 总结: 先创建外部类对象,再通过外部类对象.new 内部类名()的方式创建对象 School school…
编写java程序时,一般一个类(或者接口)都是放在一个独立的java文件中,并且类名同文件名(如果类是public的,类名必须与文件名一致:非public得,无强制要求).如果想把多个java类放在一个java文件中,则只能有一个public类.如下面的两个类放在同一个文件中就会报错,无法编译通过. 可以看出,因为TestOne.java文件中已经有一个public类TestOne,这时再加了一个public类TestTwo就报错了.如果将类TestTwo前面的public修饰符去掉就没有问题了…
什么是内部类 内部类是指在一个外部类的内部再定义一个类.内部类作为外部类的一个成员,并且依附于外部类而存在的.内部类可为静态,可用protected和private修饰(而外部类只能使用public和缺省的包访问权限).内部类主要有以下几类:成员内部类.局部内部类.静态内部类.匿名内部类 为什么要使用内部类 ①内部类提供了更好的封装,除了该外围类,同一个包下的其他类都不能访问 ②内部类并没有令人迷惑的"is-a"关系,他就是一个独立的实体 ③内部类可以对同一个包中的其他类隐藏起来,一般…
package cn.temptation; public class Sample01 { public static void main(String[] args) { // 内部类(嵌套类):把类定义在其他类的内部,这个类被称为内部类(嵌套类) // 内部类的分类:(根据所在位置及形式的不同) // 1.成员内部类 // 2.静态内部类 // 3.局部内部类 // 4.匿名内部类 // 1.成员内部类:联想到成员变量和成员方法,内部类所在位置和类的成员同级 // 观察一下生成的字节码文件…
Date,时间和日期类,这里讲util包中的而不是sql包中的 Date:表示特定的时间瞬间,精确到毫秒(1000毫秒=1秒) 时间和日期的操作都基于毫秒值 时间原点:1970年1月1日,0时0分0秒,对应毫秒值为0 得到当前时间的毫秒值: public class DateDemo { public static void main(String[] args) { long l = System.currentTimeMillis(); //获取当前日期的毫秒值 System.out.pri…
List接口继承自Collection接口,自身具有三大特点: 1.有序集合:存入和取出的顺序一致: 2.此接口的用户可以对每个元素插入位置进行精确控制:可以通过索引操作元素 3.可以存储重复元素 List接口的特有方法: import java.util.ArrayList; import java.util.List; import java.util.ListIterator; /*List接口的特有方法: * 1)add()添加元素 * 2)remove()删除元素 * 3)get()获…
一.封装 概念: 将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问. 实现步骤: 修改属性的可见性——设为private. 创建getter/setter方法——用于属性的读写. 在getter/setter方法中加入属性控制语句——对属性值的合法性进行判断. 包: 作用: 管理Java文件:解决同名文件冲突. 定义名: package 包名 必须放在Java源程序的第一行,包名间可以用“.”隔开. 系统中的包: java.(功能).(类)…