笔记:

package 任务135;
/**类的 内部类,
*1.相当于说, 我们可以在类的内部再定义类,
* 2.成员内部类:
* a.是外部类的一个成员,4个修饰符:static, final ,abstract ,可以调用外部类的属性和方法
* b.具有类的特点:
* 3.局部内部类:(定义在类的方法中! )
* 常常使用一个方法,使其成为某个类或接口的对象, 而这个类或者接口在方法内部创建
* 4.或者 new___(){}返回一个匿名的 实现这个类的对象
* 4.重点: 1)创建 2)如何区分调用外部类和内部类的变量; 3)局部内部类的使用
*/

代码:

public class TestInnerClass {
public static void main(String[] args) {
Person.Dog d= new Person.Dog(); //静态的创建对象的方法
//非静态的内部类的对象,需要先创建外部类的对象,通过外部类的对象调用内部类的对象
Person p=new Person();
Person.Bird b=p.new Bird();
b.setName("杜鹃2333");
}
}
class Person{
String name="韩梅梅";
int age;
//成员内部类,非静态的
class Bird{
String name="黄鹂";
int id;
public Bird() {
} public void setName(String name) {
System.out.println(name);
System.out.println(this.name);
System.out.println(Person.this.name);
}
@Override
public String toString() {
return "Bird{" +
"name='" + name + '\'' +
", id=" + id +
'}';
}
} //成员内部类,静态的
static class Dog{ }
public void show(){
System.out.println("我是show 方法");
}
public void method1(){ } } //局部内部类的使用
//常常使用一个方法,使其成为某个类或接口(Comparable)的对象, 而这个类或者接口在方法内部创建
class TestOuterClass{ //返回一个实现这个类的 对象
public Comparable getComparable(){
class MyComparable implements Comparable{
@Override
public int compareTo(Object o) {
return 0;
}
}
return new MyComparable();
}
//返回一个匿名的 实现这个类的对象
public Comparable getComparable2(){
return new Comparable(){
public int compareTo(Object o) {
return 0;
}
};
}
}

输出:

杜鹃2333
黄鹂
韩梅梅

Java 基础 面向对象- 成员内部类/局部内部类/举例Comparable 接口的匿名内部类的更多相关文章

  1. Java 基础 面向对象之关键字内部类代码块修饰符

    final final概念 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这些特殊类之后 ...

  2. Java基础进阶:内部类lambda重点摘要,详细讲解成员内部类,局部内部类,匿名内部类,Lambda表达式,Lambda表达式和匿名内部类的区别,附重难点,代码实现源码,课堂笔记,课后扩展及答案

    内部类lambda重点摘要 内部类特点: 内部类可以直接访问外部类,包括私有 外部类访问内部类必须创建对象 创建内部对象格式: 外部类.内部类 对象名=new外部类().new内部类(); 静态内部类 ...

  3. Java基础-面向对象第三大特性之多态(polymorphism )

    Java基础-面向对象第三大特性之多态(polymorphism) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.多态概述 多态是继封装,继承之后,面向对象的第三大特性,多态的 ...

  4. Java基础-面向对象第一特性之封装(Encapsulation)

    Java基础-面向对象第一特性之封装(Encapsulation) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.理解什么是面向过程和面向对象 面向过程与面向对象都是我们编程中 ...

  5. 第二十七节:Java基础面向对象-静态,单例模式,继承详情知识点

    前言 Java基础面向对象-静态,单例模式,继承详情知识点.静态-static关键字,static变量,静态代码块,代码块(不加静态),对象创建过程,单例模式,继承. 静态-static关键字 // ...

  6. “全栈2019”Java第一百章:局部内部类可以实现接口吗?

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  7. java基础面向对象之类与对象

    java基础面向对象之类与对象 2017-01-14 1.面向对象的基本概念 以一种组建化的形式进行代码设计 1)在面向对象程序设计中包含有如下几种特性 •封装性:保护内部结构的安全性 •继承性:在已 ...

  8. Java基础-面向对象第二特征之继承(Inheritance)

    Java基础-面向对象第二特征之继承(Inheritance) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.继承的概述 在现实生活中,继承一般指的是子女继承父辈的财产.在程序 ...

  9. 夯实Java基础(十一)——内部类

    1.内部类的概念 内部类顾名思义:将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类.对于很多Java初学者来说,内部类学起来真的是一头雾水,根本理解不清楚是个什么东西,包括我自己(我太菜 ...

随机推荐

  1. CTF 专用文件监控系统

    # -*- coding: utf-8 -*-#use: python file_check.py ./ import osimport hashlibimport shutilimport ntpa ...

  2. Npcap.例子(raw tcp syn)

    1.来自:winpcap实现syn攻击 - 125096 - CSDN博客.html(https://blog.csdn.net/qq125096885/article/details/5178452 ...

  3. redis windows 扩展Redis igbinary 下载地址

    http://windows.php.net/downloads/pecl/releases/redis/3.1.2/ http://windows.php.net/downloads/pecl/re ...

  4. Ext this.getView(...).saveDocumentAs is not a function

    一.前言 Ext 导出数据,根据官网的代码,报:this.getView(...).saveDocumentAs is not a function 的问题. 参考:Ext Export not wo ...

  5. Linux程序Segmentation fault (core dumped)

    1 问题原因 Segmentation fault (core dumped)多为内存不当操作造成.空指针.野指针的读写操作,数组越界访问,破坏常量等.对每个指针声明后进行初始化为NULL是避免这个问 ...

  6. airflow安装rest api插件发现airflow webserver服务不能启动的解决办法

    安装插件airflow-rest-api 1)获取 wget https://github.com/teamclairvoyant/airflow-rest-api-plugin/archive/ma ...

  7. [转帖]Linux中awk工具的使用

    Linux中awk工具的使用 2018年10月09日 17:26:20 谢公子 阅读数 2170更多 分类专栏: linux系统安全   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权 ...

  8. [转帖]nginx location配置详细解释

    nginx location配置详细解释 http://outofmemory.cn/code-snippet/742/nginx-location-configuration-xiangxi-exp ...

  9. Oracle(11g)详细安装步骤

     最详细的Oracle安装步骤就在这里,话不多说直接给大家上安装Oracle的详细教程  如果没有安装包,可以先点击下载下载地址:http://download.oracle.com/otn/nt/o ...

  10. HashSet和HashMap

    HashMap 概念和特征  概念:以键值对的形式存储数据,由键映射到值,核心在于Key上.  特征:键不能重复,值可以重复:key-value允许为null.     HashMap   Since ...