1. 内部类访问外部类的成员变量:Outer.this.sizepublic class Outer {private int size;public class Inner1 {private int size;public void display(int size) {size++; // 引用的是display函数的形参this.size++; // 引用的是Inner类中的成员变量Outer.this.size++; // 引用的是Outer类中的成员变量}}
}2. 内部类如何被外部引用:Outer.Inner inner = outer.new Inner()要创建一个内部类的实例对象,必须先创建一个外部类的实例...
多态:某一事物的多种存在形态;简单说、就是一个对象对应不同的类型 例如:对象多态性 Class 动物{} Class 猫 extends 动物{} 猫 x= new 猫() 动物 y= new 猫() 猫这类事物即具备猫的形态,又具备动物的形态;这就是对象的多态性 多态在代码中的体现:父类或者接口的引用指向其子类的对象 多态的好处:提高代码扩展性,前期定义的代码可以使用后期的内容(被重写的父类或者接口中的抽象方法) 多态弊端:前期定...
/*
知识点:匿名内部类
作用:
匿名内部类也就是没有名字的内部类
正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写
但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口
*///抽象类
abstract class Person
{
public abstract void eat();
}//接口类(USB接口规范)
interface USB
{
public void insert();
}class AnonymousInnerClassDemo
{
public static void main(St...
一般来说,有4中内部类:常规内部类、静态内部类、局部内部类、匿名内部类。 一.常规内部类:常规内部类没有用static修饰且定义在在外部类类体中。 1.常规内部类中的方法可以直接使用外部类的实例变量和实例方法。 2.在常规内部类中可以直接用内部类创建对象 3.代码如下: public class MyOuter { private int x = 100; // 创建内部类 class MyInner { private String y = "Hello!"; public void innerMethod() { System.ou...
内容思路来自Java编程思想,个人读书做的笔记,仅个人复习之用,故他人参考请自行辨别内容是否有错误。 在类的类部可以定义类,叫做内部类。如果这个内部类被static修饰,此时内部的类叫做嵌套类。内部类用在哪里,解决了什么问题? 内部类中一定包含的有外部类的引用,即Outer.this,故,创建内部类,必须拥有外部类的实例。-public class Outer {private String foo = "kitty";class Inner{Outer getOuter(){// 在内部类中,可以...
N种内部类定义:内部类就是一个类的内部再定义一个类,比如A类中定义了一个B类,那么B类相对A来说就是内部类来说就成为内部类。而A类相对于B类称为外部类成员内部类静态内部类局部内部类匿名内部类public class Outer {private int id = 99;public void out(){System.out.println("这是外部类的方法");}public class Inner{public void in(){System.out.println("这是内部类的方法");}public void getID(){//内部类可以直接操作私有...
内部类Inner Class 将相关的类组织在一起,从而降低了命名空间的混乱。 一个内部类可以定义在另一个类里,可以定义在函数里,甚至可以作为一个表达式的一部分。Java中的内部类共分为四种:静态内部类static inner class (also called nested class)成员内部类member inner class局部内部类local inner class匿名内部类anonymous inner class
静态内部类Static Inner Class 最简单的内部类形式。 类定义时加上static关...
问:什么是内部类呢?答:内部类( Inner Class )就是定义在另外一个类里面的类。与之对应,包含内部类的类被称为外部类。问:那为什么要将一个类定义在另一个类里面呢?清清爽爽的独立的一个类多好啊!!答:内部类的主要作用如下:1. 内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类2. 内部类的方法可以直接访问外部类的所有数据,包括私有的数据3. 内部类所实现的功能使用外部类同样...
什么是内部类?fdd内部类是指在一个外部类的内部再定义一个类。内部类作为外部类的一个成员,并且依附于外部类而存在的。内部类可为静态,可用protected和private修饰(而外部类只能使用public和缺省的包访问权限)。内部类主要有以下几类:成员内部类、局部内部类、静态内部类、匿名内部类内部类的共性(1)、内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.class文件,但是前面冠以外部类的类名和$符号 。(2)、内部类...
作为刚入门Java的小白,这两天看到内部类,这里做一个总结,若有错误,欢迎指正~内部类是指在一个外部类的内部再定义一个类。类名不需要和文件夹相同。内部类分为: 成员内部类、局部内部类、静态嵌套类、匿名内部类 。1.成员内部类成员内部类是最普通的内部类,它的定义为位于另一个类的内部,形如下面的形式:class Outter {private int age = 12;class Inner {private int age = 13;public void print() {int age = 14;System.o...
难度初级学习时间10分钟适合人群零基础开发语言Java开发环境JDK v11IntelliJ IDEA v2018.3文章原文链接“全栈2019”Java第一百零二章:哪些作用域可以声明局部内部类?下一章“全栈2019”Java第一百零三章:匿名内部类详解学习小组加入同步学习小组,共同交流与进步。方式一:关注头条号Gorhaf,私信“Java学习小组”。方式二:关注公众号Gorhaf,回复“Java学习小组”。全栈工程师学习计划关注我们,加入“全栈工程师学习计划”。...
最近在看Java相关知识的时候发现Java中同时存在内部类以及非公有类概念,而且这两个类都可以不需要单独的文件编写,可以与其他类共用一个文件。现根据个人总结将两者的异同点总结如下,如有什么不当地方,欢迎大家指正。1、非公有类和内部类对应的文件名与这两种类的类名无关;2、一个源文件中可以包含多个非公有类或者内部类;3、非公有类不能使用public关键字(一般前面不加关键字),内部类可以使用public、private、protected关...
1、类名作为形式参数 1/* 2 形式参数:3 基本类型4 引用类型5 类名:(匿名对象的时候其实我们已经讲过了) 需要的是该类的对象6 抽象类:7 接口8*/ 9class Student {
10publicvoid study() {
11 System.out.println("Good Good Study,Day Day Up");
12 }
13}
1415class StudentDemo {
16publicvoid method(Student s) { //ss; ss = new Student(); Student s = new St...
对main方法而言,虽然写在类中,它是游离于任何类之外的,因此某类的非静态内部类对它而言是不直接可见的,也就无法直接访问 。1:非静态内部类,必须有一个外部类的引用才能创建。2:在外部类的非静态方法中,因为有隐含的外部类引用this,所以可以直接创建非静态内部类。3:在外部类的静态方法中,因为没有this,所以必须先获得外部类引用,然后创建非静态内部类。4:静态内部类,不需要外部类引用就可以直接创建。5:同时静态的...
什么是内部类?内部类是指在一个外部类的内部再定义一个类。内部类作为外部类的一个成员,并且依附于外部类而存在的。内部类可为静态,可用protected和private修饰(而外部类只能使用public和缺省的包访问权限)。内部类主要有以下几类:成员内部类、局部内部类、静态内部类、匿名内部类内部类的共性(1)、内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.class文件,但是前面冠以外部类的类名和$符号 。(2)、内部类不...