Android开发学习——Day9(Java基础知识三)
学习目的
1.了解修饰符的概念
2.学习对象的赋值方法、静态方法和“this”方法
学习过程
在类、方法、成员变量等元素的定义时可以使用修饰符对其进行控制。对修饰符进行深刻了解,进而学习对象的赋值,其相关的知识也一并研习。
技术
1.修饰符:
public:公共的,外部可以直接访问这个属性/方法
private:私有的,不希望外部访问这个对象的一些属性和方法
Tips:若是以private修饰的元素外部需要调用,则不能直接调用,需要间接调用,调用有如下两种方式。
1)setter/getter方法
setter/getter方法用此方法间接调用
2)构造方法(初始化方法)
构造方法的使用
1>希望在对象创建的时候,做点事情(默认的或自定义的)
2>在对象创建的时候,需要给属性赋值(自定义的)
3>创建一个类的一个对象的时候,就会被调用的方法
注意:
1>建议将setter/getter方法定义在类的最后面,避免干扰阅读
2>通常给一个属性赋值时,形参名尽量和属性名一致
3>变量在使用的时候有就近原则
4>方法重载:同一个类里面有多个同名的方法,但是返回值或者参数不同
eg:
public int nextInt();
public int nextInt(int i);
5>用"this"方法的情况
需要明确指定调用的是这个对象自己的一些属性和方法
2.相关知识
1)方法类别
1>静态方法——static
static修饰的属性和方法都会在对象创建之前优先加载,加载在静态区->方法区中
类方法/静态方法:不需要创建对象直接用这个类来调用
静态属性:1.定义一个常量只能赋值一次
2>实例方法/对象方法:必须创建某一个对象才能调用的方法
2)单例设计模式:是一种常用的软件模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的一个类只有一个实例。即一个类只有一个对象实例。
感悟
以前觉得面向过程和面向对象不过是两种类别的编程工具罢了,并不很在意。但经过这几天的学习下来,我发现我以前的看法是错误的。这两者有着巨大的差别,完全是两种思维模式。面向过程的编程语言是按照逻辑思路从上至下走到底的,而面向对象的编程语言则是一切皆是对象,要归类化处理问题。那么这就对编写代码时我们的思路清晰度要求很高了。你要时刻知道需要用到什么,需要定义什么,该怎么归类等一系列问题。所以说两者有大不同,即我们的思路要慢慢开始转变过来。