精华内容
下载资源
问答
  • 局部内部类的使用

    2019-09-22 13:13:46
    * 关于局部内部类的使用 */ public class TestInnerClass1 { } class OutClass{ //局部内部类 public void method{ class InnerClass{ } } //常常使用一个方法使其返回值为某个类或接口的对象。而...

    使用方式一:”//1.创建一个实现Comparable接口的类:局部内部类
    2.返回一个实现类的对象
    方式二://直接返回实现的对象

    /*
     * 关于局部内部类的使用
     */
    public class TestInnerClass1 {
    	
    
    }
    class OutClass{
    	//局部内部类
    	public void method{
    		class InnerClass{
    			
    		}
    	}
    	//常常使用一个方法使其返回值为某个类或接口的对象。而这个类或接口在在不创建
    	public Comparable getComparable() {
    		//1.创建一个实现Comparable接口的类:局部内部类
    		class Mycomparable implements Comparable{
    
    			@Override
    			public int compareTo(java.lang.Object o) {
    				// TODO Auto-generated method stub
    				return 0;
    			}
    			
    			
    		}
    		//2.返回一个实现类的对象
    		
    		return new Mycomparable();
    	}
    	public Comparable getComparable1() {
    		//返回一个实现Comparable 
    		return new Comparable() {
    
    			@Override
    			public int compareTo(java.lang.Object o) {
    				// TODO Auto-generated method stub
    				return 0;
    			}
    			
    		};
    	}
    }
    
    
    展开全文
  • Java局部内部类的使用

    2020-09-27 14:51:13
    Java局部内部类的使用 package 内部类; public class Outer { public void fun() { //外部类的成员方法 class Inner { //成员方法的局部内部类 int a = 20; public void fun1(){ //内部类的方法 System.out....

    Java局部内部类的使用

    package 内部类;
    
    public class Outer {
        public void fun() { //外部类的成员方法
            class Inner {   //成员方法的局部内部类
                int a = 20;
                public void fun1(){ //内部类的方法
                    System.out.println(a);
                }
            }
            Inner obj = new Inner();
            obj.fun1(); //调用局部内部类的方法
        }
    }
    
    
    package 内部类;
    
    public class TEST {
        public static void main(String[] args) {
            Outer obj = new Outer();
            obj.fun();
        }
    }
    
    

    注:关于几种类的权限修饰符问题。

    外部类:可用public (default)public\ 或者(default)
    内部类:public,protected,(default),privatepublic,protected,(default),private都可。
    局部内部类:只能用(default)(default),即什么都不能加。

    展开全文
  • java 局部内部类的使用规范 java 局部内部类的使用规范
  • 定义在方法或某个作用域内内部类,称为局部内部类。匿名内部类就是一种局部内部类局部内部类基本形式:class People{public People() {}}class Man{public Man(){}public People Woman(){class Woman extends ...

    定义

    在方法或某个作用域内的内部类,称为局部内部类。匿名内部类就是一种局部内部类。

    局部内部类基本形式:

    class People{

    public People() {

    }

    }

    class Man{

    public Man(){

    }

    public People Woman(){

    class Woman extends People{ //局部内部类

    int age =0;

    }

    return new Woman();

    }

    }

    进阶操作

    package com.Class;

    public class People {

    public double height = 5;

    int age;

    public People() {

    }

    void show() {

    System.out.println(age);

    }

    }

    package com.Class;

    public class Man {

    public Man() {}

    int a = 10;

    public People Woman(){//Woman类出来这个Woman函数则无法使用

    int b = 20;

    class Woman extends People{ //这一步是为了使得Woman能够在另一个类中实例化

    int age = 30;

    void show() {

    System.out.println(age);

    System.out.println(b);

    }

    @Override

    public String toString() {

    return "Woman [age=" + age + "] [height="+height + "]";

    }

    }

    Woman woman = new Woman();

    return woman ;

    }

    }

    package com.Class;

    public class PeopleTest {

    public static void main(String[] args) {

    Man aMan = new Man(); //new一个外部类

    People womanPeople = aMan.Woman(); //通过外部类使用放在内部类的方法,而局部内部类只能在函数里面使用,但是可以通过返回对象用父类继承,从而在外部使用

    womanPeople.show();

    }

    }

    总结:

    规则一:局部内部类类似方法的局部变量,所以在类外或者类的其他方法中不能访问这个内部类,但这并不代表局部内部类的实例和定义了它的方法中的局部变量具有相同的生命周期。

    规则二:只能在方法内部使用,类(局部内部类)定义之后使用,不存在外部可见性问题,因此没有访问修饰符。

    规则三:不能在局部内部类中使用可变的局部变量。

    规则四:可以访问外围类的成员变量。如果是static方法,则只能访问static修饰的成员变量。

    规则五:可以使用final 或 abstract修饰。

    展开全文
  • 02Java面向对象进阶-24. 局部内部类的使用*

    局部内部类定义位置

    局部内部类是在方法中定义的类

    局部内部类方式方式

    • 局部内部类,外界是无法直接使用,需要在方法内部创建对象并使用
    • 该类可以直接访问外部类的成员,也可以访问方法内的局部变量

    示例代码

    
    public class Outer {
    
        private int num = 10;
    
        public void method() {
            int num2 = 20;
            class Inner {
                public void show() {
                    System.out.println(num);
                    System.out.println(num2);
                }
            }
    
            Inner i = new Inner();
            i.show();
        }
    }
    
    public class OuterDemo {
        public static void main(String[] args) {
            Outer o = new Outer();
            o.method();
        }
    }
    
    展开全文
  • //局部内部类 class AA{ } } //返回一个实现了Comparable接口的类的对象 public Comparable getComparable(){ //创建一个实现了Comparable接口的类:局部内部类 //方式一: // class MyCom
  • JAVA局部内部类的使用

    千次阅读 2017-04-22 00:00:11
    我是在JDK8环境下实现,与之前版本规则有一些变化,所以在这里mark一下 public class localInnerClass{ public static void main(String []args){ OutClass out = new OutClass(); out.show(); } } class ...
  • 1 public class TestInnerClass1 { 2 3 } 4 5 class OuterClass{ 6 //局部内部类 7 //如下的使用方式较少 8 public void method1(){ 9 10 class InnnerClass{ 11 ...
  • package tmp; public class SellOut { public float profile_precent=0.1f; public SellOut(float profile_precent){ ...知识点:1、局部内部类即为成员方法里面定义类,它作用范围只在这个方法体内
  • 关于局部内部类的使用注意事项: 局部内部类在JDK8之前只能使用成员变量和被final修饰的局部变量。JDK8之后,局部内部类如果使用局部变量那么局部变量默认被final修饰,但如果局部变量被重新赋值,那么局部内部类将...
  • 由于局部内部类不能在外部类的方法以外的地方使用,因此局部内部类也不能使用控制符合static修饰符修饰。如果需要用局部内部类定义变量、创建实例或派生子类,那么都只能在局部内部类所在的方法中进行。二 代码...
  • 内部内是在一个类的内部再定义一个完整的类。它编译之后可生成独立的字节码文件;...内部类分为成员内部类、静态内部类、局部内部类、匿名内部类。成员内部类。publicclassTest1{Stringname="kk"; public Test1() { ...
  • 日常生活中,闹钟应用非常广泛。使用它可以更好地帮助人们安排时间。编写程序,实现一个非常简单闹钟,控制台会不断输出当前时间,并且每隔一秒钟会发出...在该方法中定义一个局部内部类来实现ActionListene...
  • 局部内部类(包含匿名内部类) ①同级类 在当前类同级下继续书写其他类,书写语法与普通类相同,但修饰符只能使用默认 在使用时与普通类一致,只是访问范围只有本包下,将相当于少创建了一个文件 //员工类 public ...
  • 包括实例内部类、匿名内部类、静态内部类和局部内部类的特点和使用方法 1. 实例内部类 成员内部类的一种,没有static修饰,实例内部类具有以下特点 在创建实例内部类的实例时,外部类的实例必须已经存在,想创建...
  • 在JDK8 以前版本中使用匿名内部类时,在匿名内部类使用局部变量时,局部变量必须被final修饰,否则会报错。在JDK8 以后及JDK8 在匿名内部类使用局部变量时,不必添加final修饰,程序自动为这个变量添加了final...
  • 很多java程序员都还是很好奇匿名内部类到底有什么卵用,为什么要有这种奇怪设计。那么今天编程菜鸟为你解答。 从重构角度来看,匿名内部类可以使你少些一些重复代码,案列如下: 首先我们来看一个代码,计算一个...
  • * 内部类(成员内部类,局部内部类,匿名内部类) * * @ClassName InnerClass * @Description * @author 桑伟东 */public class OuterClass { //外部类成员变量 public String name = “桑伟东1”;/**
  • 示例代码如下:public class Test {public void method() {class Inner {// 局部内部类}}}局部内部类有如下特点:1)局部内部类与局部变量一样,不能使用访问控制修饰符(public、private 和 protected)和 static 修饰...
  • 这种内部类是局部的,实际上和局部变量有点类似,是定义在方法中的,不过在实际开发中,对于局部内部类的使用是很少的。~ 代码如下: public class Demo { public void Hello() { class Inner {...
  • 它和成员内部类的区别在于局部内部类的访问仅限于方法内。需要注意的是,局部内部类就像是方法里面的一个局部变量一样,是不能有public、protected、private以及static修饰符的。局部内部类的语法...
  • 1、//局部内部类、静态内部类、匿名类////接口仅仅解决了多继承部分问题,内部类有效实现了多重继承 package ClassN1; public final class InnerClass { private int a=50; private int out_i=1; private ...
  • 今天介绍第二种内部类——局部内部类局部内部类是什么?顾名思义,那就是定义在局部内部的类...局部内部类同样可以无限制调用外部类的方法和属性。可以使用abstract修饰,声明为抽象类。举个栗子:public class O...
  • 如果一个类是定义在一个方法内部,那么这就是一个局部内部类。 “局部”:只有当前所属方法才能使用它,出了这个方法外面就不能用了。 定义格式: 修饰符 class 外部类名称 { 修饰符 返回值类型 外部类方法名称...
  • 局部内部类是定义在外部类的局部位置,比如方法中,并且有类名. 可以直接访问外部类的所有成员,包含私有的 不能添加访问修饰符,因为它的地位就是一个局部变量,但是可以使用final修饰,因为局部变量也可以使用final ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,501
精华内容 1,800
关键字:

局部内部类的使用