javaFx,内部类——《java程序设计语言》
1.首先谈一下javaFx中布局相关,因为学过安卓,所以对于这个javaFx也能理解,主要记忆下面两个图。
2.事件驱动编程
3.内部类
归根到底的问题是作用域问题:Java规范里确实规定了外部类可以访问内部类的private/protected变量,就像访问自己的private/protected变量一样.
类的访问有两种方式类的继承,类的实例化。
成员内部类:
在其他类中对非静态内部类的创建:
OuterClass.InnerClass innerObject - outerObject.new InnerClassO;
对静态内部类的创建:
OuterClass.InnerClass innerObject « new OuterClass.InnerClass();
匿名内部类:
匿名内部类是一种特殊类型的内部类,它被当作一个内部类对待,同时具有以下 特征:
• — 个匿名内部类必须总是从一个父类继承或者实现一个接口,但是它不能有显式的 extends 或者 implements 子句0
• 一个匿名内部类必须实现父类或者接口中的所有抽象方法。
• — 个匿名内部类总是使用它父类的无参构造方法来创建一个实例。如果一个匿名内 部类实现一个接口,构造方法是 Object()。这里的意思是实现接口所调用的构造方法是Object类中的构造方法,第一次看还以为在匿名内部类中再定义一个接口。
• 一个匿名内部类被编译成一个名为 OuterClassNameSn.class 的类。例如,如果外部 类 Test 有两个匿名的内部类,它们将被编译成 Test$l.class 和 Test$2.class。
小总结:在用法感觉是直接new出一个抽象类和接口,大括号要实现所以抽象方法,曾经面试问了一个这样印象深刻的问题,就是再成员方法中使用匿名内部类,然后匿名内部类总引用成员方法的要给变量,这个变量声明为final?这是一个类的作用域问题,匿名内部类当作一个成员内部类,然后成员内部类如何引用外类的方法中变量?当然是将方法中变量声明为final。把他作用域扩大为外类的全局变量。
javaFx简单的过了一遍,里面还有关于动画,多媒体的使用,深入学习还需要看相关材料。