package com.xt.instanceoftest;

import com.xt.instanceoftest.Body.Heart;

public class StaticInnerClass {

    //静态内部类必须直接定义在外部类中
static class Student{
public void study() {
System.out.println("xuexi...");
}
} public static void main(String[] args) {
Student s = new Student() { };
s.study(); class S extends Student{ }
Student s1=new S();
s1.study();
Heart heart = new Body.Heart();
}
}

//只有静态有名内部类才能定义静态代码块,静态变量 ,静态方法。
static class Mammal{
static { }
static int a=0;
static void print() { }
}

package com.xt.instanceoftest;

public class PrivateInnerClass {

    //son 是一个上转型对象  而上转型对象是不能调用子类新增的成员变量和方法的
public static void main(String[] args) {
new Parent() {//匿名内部类不能有构造方法,不能使抽象类 因为都没名字 无法被new和继承
int a;//这些新增的属性和方法是不能被上转型对象调用的
public void walk() {
System.out.println("子类走。。。");
}
};
}
} class Parent{ public void walk() {
System.out.println("父类走。。。");
}
}

有名内部类

 1 package com.xt.innerClass;

 public class Body {

     class Heart{
public void beat() {
System.out.println("心脏在跳动。。");
}
} public static void walk() {
System.out.println("身体在走路。。");
} public static void main(String[] args) {
Body body = new Body();
Body.walk();
Heart heart = body.new Heart();
heart.beat();
}
}

内部类不能在默认包中!!!!!!!!!!!!!!

重点是匿名内部类

匿名内部类必须是继承父类(普通类  抽象类)的子类或接口的实现类

匿名内部类没有构造方法:因为他本来就没有类名,所有也就没有new  类名()这一说了,

匿名内部类不能使抽象类:因为没有类名,不能被其他类继承。

注意!!!!!!!!可以在匿名内部类中添加新的属性和方法,但是这些属性和方法不能被上转型对象所调用,只能被非上转型对象方式创建的匿名内部类对象所调用

上转型对象是不能调用子类新增的成员变量和方法的

静态内部类只能定义在外部类里面

只有静态有名内部类才能定义静态代码块,静态变量 ,静态方法。

静态内部类仅能直接访问外部类的静态成员变量和方法,可以通过创建外部类的对象间接使用非静态的成员变量和方法。

aaarticlea/png;base64,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" alt="" />

内部类可以直接定义在类中,也可以定义在方法或代码块中;其中直接定义在外部类中的内部类可以有public、protected、默认的和private四种访问权限修饰(普通外部类、接口和抽象类只能使用public和default修饰),也可以使用static修饰( static不能修饰普通外部类、接口和抽象类);但是定义在方法或代码块中的内部类不能有访问修饰符修饰,也不能有static修饰。

内部类可以访问外部类的所有访问权限的成员变量

在局部变量作用的范围内,如果定义的内部类需要使用该局部变量,则该变量必须有final修饰。

java中内部类的更多相关文章

  1. JAVA中内部类(匿名内部类)访问的局部变量为什么要用final修饰?

    本文主要记录:在JAVA中,(局部)内部类访问某个局部变量,为什么这个局部变量一定需要用final 关键字修饰? 首先,什么是局部变量?这里的局部是:在方法里面定义的变量. 因此,内部类能够访问某局部 ...

  2. java中内部类的积累

    放在一个类的内部的类我们就叫内部类. 二. 作用 1.内部类可以很好的实现隐藏 一般的非内部类,是不允许有 private 与protected权限的,但内部类可以 2.内部类拥有外围类的所有元素的访 ...

  3. java中内部类的讲解

    java中有一个内部类的概念,由于之前一直比较忙,没有单独拿出时间总结一下,今天我就把内部类的相关知识进行一下汇总,如果有不足之处,欢迎批评指正. 1)java内部类的概念.       在一个类的的 ...

  4. Java中内部类的骚操作

      10.1 如何定义内部类 如代码10.1-1 所示 public class Parcel1 { public class Contents{ private int value = 0;​ pu ...

  5. java中内部类使用小结

    内部类是指在一个外部类中再定义一个类,类名不需要和文件名相同 内部类可以是静态的,类的修饰符可以是private,default,protect,public修饰 ,而外部类只能是public 和 d ...

  6. java中内部类的定义与访问规则

    java内部类总结 简单来说,内部类就是在我们所熟悉的类中的里面再定义一个类 为什么需要内部类? 当我们描述事物时,事物之中还有事物,我们就用内部类描述事物 因为内部事物在使用外部事物的内容 我举一个 ...

  7. Java中内部类揭秘(一):外部类与非静态内部类的”相互可见性“

               声明:本博客为原创博客.未经同意,不得转载.原文链接为 http://blog.csdn.net/bettarwang/article/details/27012421.     ...

  8. Java中内部类和静态内部类的区别

    内部类和静态内部类 示例 public class OuterClass { private int numPrivate = 1; public int numPublic = 2; public ...

  9. JAVA中内部类和同文件非内部类的总结

    java文件的顶层类(即非其它类的内部类),可见范围只有public和非public(包内可见)2种,不能用private或protected修饰.1个Java文件只能有一个public类,且必须与文 ...

  10. Java中内部类详解—匿名内部类

    什么是内部类? 将一个类A定义在另一个类B里面,里面的那个类A就称为内部类,B则称为外部类.   成员内部类 定义在类中方法外的类. 定义格式: class 外部类 { class 内部类{ } } ...

随机推荐

  1. C++模板的偏特化与全特化

    模板的声明 类模板和函数模板的声明方式是一样的,在类定义/模板定义之前声明模板参数列表.例如: // 类模板 template <typename T1, typename T2> cla ...

  2. linux安装mysql以及修改密码和重启mysql等相关命令

    Linux/UNIX 上安装 MySQL Linux平台上推荐使用RPM包来安装Mysql,MySQL AB提供了以下RPM包的下载地址: MySQL - MySQL服务器.你需要该选项,除非你只想连 ...

  3. lockfree buffer test

    性能测试(3): 对无锁队列boost::lockfree::queue和moodycamel::ConcurrentQueue做一个性能对比测试     版权声明:本文为博主zieckey原创文章, ...

  4. PL/SQL中文乱码问题

    本人的使用情况是: 笨既没有安装Oracle,配置了PLSQL,在查询含有中文数据的时候遇到了查询的数据中有中文乱码的问题,中文显示为???,并且软件的某些提示也会出现.   先进行查询确认编码:   ...

  5. CentOS7 磁盘管理

    一.磁盘查看 查看所有磁盘 ll /dev/sd* 不带数字的为磁盘,带数字的为磁盘的分区 查看所有磁盘的分区情况 fdisk -l 结果 WARNING: fdisk GPT support is ...

  6. When 表达式 kotlin(9)

    When 表达式 when 取代了类 C 语言的 switch 操作符.其最简单的形式如下:控制流when (x) { 1 -> print("x == 1") 2 -> ...

  7. leetcode-hard-array-128. Longest Consecutive Sequence

    mycode   92.62% class Solution(object): def longestConsecutive(self, nums): """ :type ...

  8. ccf 201612-3 权限查询

     ccf 201612-3 权限查询 解题思路: 建立一个二维矩阵存储权限和角色 还差30分emmm #include<iostream> #include<cstring> ...

  9. ambari部署Hadoop集群(2)

    准备本地 repository 1. 下载下面的包 wget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.7.3 ...

  10. 内存数据库:Redis与Memcached的区别

    Redis与Memcached的区别 传统MySQL+ Memcached架构遇到的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都 ...