4 Java基础09-面向对象【多态】( 三 )


【4Java基础09-面向对象【多态】】3.4 ()方法
.:是前面的那一部分
4.包装类
(基本数据类型-字符串-包装类 三者类之间的相互转换)
基本数据类型
//每一个基本数据类型提供个对应的包装类
class{
?void main([] args) {
? int i=10; //Ruby int i=10;i.
?= new
? (i);
? //方法根据要返回的基本数据类型将value转化成该类型返回,返回的是基本数据类型 。
? long l = . ();
? //方法将字符串解析为对应的值 。
? long il= .(“67”);
? //方法将字符串解析为对应的对象 。
?2 = .(“67”);
? //常用 //方法将字符串或者是基本数据类型解析然后包装成对应的包装类对象
?=. (78);
? //
? int bytes =.BYTES;
? . out . (bytes);
基本数据类型和其对应的包装类的转换
1.1基本转包装
=new (“23.9f”)
Float=Float . va lue0f (45.7f)
1.2包装转基本
d =. ():
1.3自动装箱和自动拆箱
Java的编译器会根据需要自动地在基本数据类型和其对应的包装类之问进行转化
= new ( value: 10);
= new ( value: 20);
//add(20, 67); //自动装箱,将基本数据类型转换成包装类型
int sum =+ ; //自动拆箱,将包装类型拆成基本数据类型
. out. (sum);
2字符串与包装类之间的转换
2.1字符串->包装类
= new
( S: “23.9”);
FLoat= Float . va Lue0f(“45.7f”);
2.2包装类->字符串
(1) s =. ();
3字符串与基本数据类型的转换
3.1字符串–>基本数据类型
(1)int i = . ( “36F”);
3.2基本数据类型–>字符串
(1) s = . (i);
. out . (s);
(2) s1=i+“ ”;
. out. (s1);
思考题
1. ol = true ? new ( value: 1) : new ( value: 2.0) ;
// 对象 对象
// int 12.0
//1. 02. 0
问题:. out. (o1);?
A 1 B 2 C 1.0 D 其他
选c1.0
i =new ( value: 1);
j = new ( value: 1) ;
. out.(i == j);//
m = 1;
n = 1;
.out. (m == n);//true,放到缓存中-128~127
x = 128;
y = 128;
. out .(x == y);//,放到缓存中-128~127,超出,只能在内存中new对象
5 接口 5.1 概述
5.2 语法
命名:表示什么能力时:
定义Java类的语法格式:先写,后写
class SubClass extends SuperClass implements InterfaceA{ }
一个类可以实现多个接口,接口也可以继承其它接口 。//–> ,
实现接口的类中必须提供接口中所有方法的具体实现内容,方可实例化 。否则,仍为抽象类 。
接口的主要用途就是被实现类实现 。(面向接口编程)
与继承关系类似,接口与实现类之间存在多态性
接口和类是并列关系,或者可以理解为一种特殊的类 。从本质上讲,接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义(JDK7.0及之前),而没有变量和方法的实现 。
5.3 接口与抽象类
9.都可以使用:没有成员变量
思考题-
interface A {int x = 0;}class B {int x = 1;}class C extends B implements A {public void pX() {System.out.println(x);//对x的引用不明确B和A都匹配}public static void main(String[] args) {new C().pX();} }
思考题采纳-
interface Playable {void play();}interface Bounceable {void play();}interface Rollable extends Playable, Bounceable {Ball ball = new Ball("PingPang");}class Ball implements Rollable {private String name;public String getName() {return name; }public Ball(String name) {this.name = name; }public void play() {ball = new Ball("Football");//无法为最终变量球赋值System.out.println(ball.getName());} }