【浅谈Java中的四种内部类】教程文章相关的互联网学习教程文章

《java编程思想》第十章 内部类【代码】

定义 :将一个类定义放在一个类的内部,这就是内部类。10.1创建内部类OuterClassName。InnerClassName 10.2链接到外部类内部类能访问外围对象的所有成员,而不需要任何特殊条件。此外内部类还拥有其外部类的所有元素的访问权。包括private原因:当某个外围类的对象创建了一个内部类对象时,此内部类对象必定会秘密的捕获一个指向那个外围类对象的引用。然后,在你访问此外围类的成员时,就是用那个引用来选择外围类的成员。10.3 使...

java内部类【代码】

内部类从字面的意思来理解就是在一个类当中又有一个类,相当于有一架飞机,飞机里有引擎,而引擎又有自己的属性和方法,所以引擎就需要用一个类来封装,那么引擎就是一个内部类,而飞机就是引擎的外部类。但是在实际应用当中内部类并不是那么好理解,对于内部类的创建对象,以及外部对它的引用,所以做以下总结。实例1:内部类的基本结构  1//外部类 2class Out {3privateint age = 12;4 5//内部类 6class In {7publicvoid print(...

java学习之方法内部类【代码】

*方法内部类* 在类中的方法内定义一个类* 注意:* 1 方法内部类只能在类的方法内实例化不可以在此方法外实例化* 2 。方法内部类对象只能用所在方法体中的变量不能改,jdk1.8可以* 以后只能用final标识的但都是只读;* * * * */class A1{public String name="asdad";publicvoid print(){finalint a1=123;//方法内部类class Inner{publicvoid printf(){System.out.println("方法内部类"+a1+name);}}Inner a=new Inner();a.printf();}...

java中内部类中还有内部类请给实例!

2.当内部类中还有一个内部类,下面给出了一个实例。【新手可忽略不影响继续学习】(以下多出代码, 用蓝色标记)例2.2:class ShellMark_to_win { int shell_x = 100;//马克-to-win:既然每个内部类实例都可以改变这里的外层类静态属性或实例属性,这里成为内部类实例们可以交互的地方 static int n; void visitCore() { Core core = new Core(); core.y=8; core.display(); } // 下面是个实例内...

Java内部类【代码】

内部类的访问规则:1,内部类可以直接访问外部类中的成员,包括私有。 之所以可以直接访问外部类中的成员,是因为内部类中持有了一个外部类的引用,格式 外部类名.this2,外部类要访问内部类,必须建立内部类对象。访问格式:1,当内部类定义在外部类的成员位置上,而且非私有,可以在外部其他类中。可以直接建立内部类对象。格式 外部类名.内部类名 变量名 = 外部类对象.内部类对象; Outer.Inner in = new Outer().new Inner();2,...

JAVA中的内部类【代码】

内部类?一个类中有类,实现了类的隐藏,实现了多重继承,内部类拥有所有的外部类所拥有的属性和方法的访问修饰符避免修改接口的时候出现同名方法内部类分为四种:成员内部类、局部内部类、静态内部类、匿名内部类第一种成员内部类 package cn.inner.member;/*** @2018年4月6日* @王 鸿* @Administrator*/publicclass Animal {publicint age;private String name;publicvoid eat() {}protectedvoid show() {}class Dog {publicvoid...

Java知多少(37)静态内部类、匿名内部类、成员式内部类和局部内部类【代码】

内部类可以是静态(static)的,可以使用 public、protected 和 private 访问控制符,而外部类只能使用 public,或者默认。成员式内部类在外部类内部直接定义(不在方法内部或代码块内部)的类就是成员式内部类,它可以直接使用外部类的所有变量和方法,即使是 private 的。外部类要想访问内部类的成员变量和方法,则需要通过内部类的对象来获取。请看下面的代码: 1publicclass Outer{2privateint size;3publicclass Inner {4public...

黑马程序员——Java基础——面向对象——继承、抽象类、接口、多态、包、内部类、异常等【代码】【图】

第一讲  继承  1、继承:  当多个类拥有相同的功能时,那么这些类不需要每个都写这些相同的功能,只需要把相同功能抽到一个单独的类中,继承这个类就能获得这些相同的功能;(1)继承的体系结构:就是对要描述的事物进行不断的向上抽取,就出现了体系结构。要了解这个体系结构中最共性的内容,就看最顶层的类。要使用这个体系的功能,就用最底层的类创建对象(2)好处:A、提高代码复用性:B、继承的出现,让类与类之间产生关系,...

Java 之 内部类【代码】

(static修饰的成员属于整个类,而不属于单个对象)定义:将一个类放到另一个类的内部定义,这个在内部定义的类就叫做内部类(也有的成嵌套类),包含内部类的类被称为外部类(也有的称宿主类)。1。非静态内部类没有使用static修饰的内部类就是非静态内部类。注意:a。java不允许在非静态内部类中定义静态成员b。当调用非静态内部类中的实例方法时,必须有一个非静态成员内部类实例,非静态内部类实例必须寄生在外部实例内c。如果...

讨论Java中的内部类是什么?【代码】【图】

目录前言what is that?成员内部类局部内部类匿名内部类why use it?how to use?前言内部类,讲完前面的特性,今天就讲下内部类这个用的比较多,出现频率挺高的知识点。what is that?首先,顾名思义,内部类就是在类的内部,也就是类的类,嵌套在里面的。直接代码介绍,现一般分为成员内部类和局部内部类,还有一种匿名类。内部类拥有对外围对象的引用。大部分使用的都是成员内部类。成员内部类是一种与Field、方法、构造器和初始化...

Java之内部类的初级应用详解(附源码)

示例源码 在本节中我们将讲述内部类应用中的一个更典型的情况:外部类将有一个方法,该方法返回一个指向内部类的引用,就像在to()和contents()方法中看到的那样。package com.mufeng.thetenthchapter;public class Parcell2 {class Contents {private int i = 11;public int value() {return i;}}class Destination {private String label;public Destination(String whereTo) {// TODO Auto-generated constructor stub l...

java----内部类与匿名内部类的各种注意事项与知识点

Java 内部类分四种:成员内部类、局部内部类、静态内部类和匿名内部类。1、成员内部类: 即作为外部类的一个成员存在,与外部类的属性、方法并列。注意:成员内部类中不能定义静态变量,但可以访问外部类的所有成员。public class Outer{private static int i = 1;private int j=10;private int k=20;public static void outer_f1(){//do more something}public void out_f2(){//do more something}//成员内部类class Inner{//stati...

Java中的匿名内部类

通常通过继承某个类或实现某个接口的方式来编写代码,可是有时候某一些代码仅仅使用一次,就没有必要写专门写一个子类或实现类了,能够採用匿名内部类的写法。最经常使用的场景是线程方面的应用。一、不使用匿名内部类 ①继承 abstract class Player {public abstract void play(); } public class FootBallPlayer extends Player {public void play(){System.out.println("踢足球");} } public class AnonymousInnerClassTest {pu...

为什么java内部类访问局部变量必须声明为final?

https://blog.csdn.net/z55887/article/details/49229491先抛出让我疑惑了很久的一个问题编程时,在线程中使用局部变量时候经常编译器会提示:局部变量必须声明为finalpackage test;public class ThreadTest { public void function(String a) { new Thread(){ @Override public void run() { System.out.println(a); } }.start(); } public static void main(String[] args) { new ThreadTest().function("a"); }}上图...

Java_内部类&API【代码】

1. 参数传递1.1 类名作为形参和返回值1、类名作为方法的形参方法的形参是类名,其实需要的是该类的对象  实际传递的是该对象的【地址值】2、类名作为方法的返回值方法的返回值是类名,其实返回的是该类的对象  实际传递的,也是该对象的【地址值】示例代码:class Cat {publicvoid eat() {System.out.println("猫吃鱼");} }//操作类class CatOperator {//1.类名作为方法的形参//方法的形参是类名,其实需要的是该类的对象publi...