首页 技术 正文
技术 2022年11月16日
0 收藏 619 点赞 3,413 浏览 1193 个字

1.什么是多态?

多态的定义:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)

现实中,关于多态的例子不胜枚举。比方说按下 F1 键这个动作,如果当前在 Flash 界面下弹出的就是 AS 3 的帮助文档;如果当前在 Word 下弹出的就是 Word 帮助;在 Windows 下弹出的就是 Windows 帮助和支持。同一个事件发生在不同的对象上会产生不同的结果。

2. 接口中的方法默认是public的(即使没有进行声明),当要实现一个接口时,在接口中定义的方法必须是public的.

3.接口为什么能够解耦?

因为方法的多态,所以接口的调用者只需要调用接口,具体的业务交给接口的实现者去实现即使用接口,可以避免接口调用方直接参与业务逻辑实现,所以能避免接口调用与业务逻辑实现紧密关联,即解耦

4.使用接口的核心原因:1.能向上转型为多个基类 2.防止客户端程序员创建该对象

5.内部类中,如果要生成外部类对象的引用,可以使用外部类的名字后面紧跟圆点和this.

6.用某个外部类对象去创建它的某个内部里对象时,可以用外部类对象的引用后面跟上.new语法.

public class test {class A{
public A()
{
print();
}
void print()
{
System.out.println("A");
}
}
public class B extends A{
public B()
{
print();
}
void print()
{
System.out.println("B");
}
}public static void main(String[] args) {test t = new test();
A a = t.new B();
}
}

7.在拥有外部类对象之前是不可能创建内部类对象的.这是因为内部类对象会暗暗连接到创建它的外部类对象上.但是如果使用嵌套类(静态内部类),那么就不需要对外部对象的引用.

8.如果定义一个匿名内部类,并且希望它使用一个其外部定义的对象,那么编译器会要求其参数引用是final的.

9.匿名内部类没有构造函数(因为它没有名字),但是可以用构造代码块(类里用大括号括起的代码,与静态块就差个static)来为它进行初始化. (感觉什么用,穿进来的参数还是得写成final)

10.找到不把参数设成final就可以传进内部类的办法(因为要设final是因为匿名内部类里用了,但只要把这件事交给构造器干就没事了)

public class test {class A{
int a;
public A(int c)
{
a=c;
}
}public static void main(String[] args) {
test t = new test();
A a = t.getA(666);
}private A getA(int c) {
c=777;
return new A(c)
{
{
System.out.println(a);}
};
}
}
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,051
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,533
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,384
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,160
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,795
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,875