#码神心得_09# 包装类、Object类方法、final、抽象类

因为考试周,足足20天没有进行android培训,期间因为课程设计也熬了好多夜,这学期总算是结束了,可以全身心投入android的学习当中了。

因为太长时间没有上培训,使得以前的知识都有点遗忘了。不过好在以前上的每一次课都有总结,可以通过查看自己博客慢慢重温之前学过的知识,每次课写总结的优点终于体现出来了!

包装类、Object类方法、final、抽象类


一、包装类

        1、包装类的设计目的:为了拟补基础数据类型进行计算和转换的繁琐操作

        2、装箱与拆箱:

                装箱:基本数据类型转化为包装类    如:Integer inObj = 100

                拆箱:包装类转化为基本数据类型    如:int it = inObj

        3、字符串转化为int类型的三种方法:

                ①int a = Integer.parseInt(aString);

                ②int a = Integer.valueOf(aString);

                ③int a = new Integer(aString);

        4、int类型转化为字符串的两种方法:

                ①String a = String.valueOf(intObj); 推荐使用

                ②String a = intObj+""; 不推荐使用


二、Object类中 toString()、equals()方法

        1、toString():如果你定义的类没有覆盖toString方法,则对象在调用toString方法时用的是Object类toString方法,返回的是“类名@hashcode".

        2、equals():被用来检测两个对象是否相等,即两个对象的内容是否相等,区分大小写。

              在这里必然要说到equals与“==”的区别:

              ①对于两个基本数据类型的比较,只能使用“==”

              ②对于引用数据类型的比较,equals比较的是两个变量的“内容”,而==比较的是两个变量的内存地址是否一致,或者说比较两个变量是否为同一对象。

        3、toString()、equals()方法重写:如果你定义的类没有覆盖Object方法,这当该类的对象在调用该方法时执行的是Object类的方法。可以通过重写该方法使之执行你所需要的操作。


三、final修饰符

        1、final修饰类:该类不能被继承。

        2、fianl修饰方法:该方法不能被重写。(但可以被重载)

        3、fianl修饰变量:变量必须初始化赋值。

        4、fianl修饰引用变量时,指的是该变量对应的对象所指向的地址不能被改变,而改变变量的值并不会导致该对象地址发生改变,因此当final修饰引用变量时,引用变量在不改变内存地址的情况下是可以改变它的值的。


四、抽象类与抽象方法(abstract)

        1、抽象类:拥有抽象方法的类为抽象类

        2、抽象方法:没有方法体的方法为抽象方法

        3、抽象类不能实例化对象

        4、继承抽象类的子类必须实现父类的所有抽象方法,否则也必须声明为抽象类,再由其子类实现。


课堂作业


作业一:基于Shape抽象类,实现一个Circle类,用于计算其周长

下面是代码:

public abstract class Shape {
	//获得周长
	public abstract double getZhouChang();
	//获得面积
	public abstract double getMianJi();
	
	public static void main(String[] args) {
		Circle circle = new Circle(10);
		System.out.println(circle.getZhouChang());
		System.out.println(circle.getMianJi());
	}
}

class Circle extends Shape{
	private double r ;
	Circle(int r){
		this.r = r;
	}
	@Override
	public double getZhouChang() {
		double result =  r*3.14*2;
		return result;		
	}
	@Override
	public double getMianJi(){
		double result = 3.14*r*r;
		return result;
	}
}

作业二:在博客里面发表自己想做的app的构想,描述清楚需求以及应用场。

暂时木有什么想要做的app,缺少idea,能够想到的基本上市场上都有

创意还不足,还需要慢慢寻找灵感



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值