java学习笔记(一)java面向对象特性摘要
来源:互联网 发布:c语言api怎么用 编辑:程序博客网 时间:2024/05/19 02:02
Java面向对象特性总结。
1、所有代码都在某个类中,每个Java源文件都只有一个public类,同时里面封装public方法main方法,该方法为整个程序入口,所有其他类、对象的调用都在main方法中进行。
2、标准的类应包含构造器(constructor),并且在对该类进行实例化时,应用new加构造器的方式进行。例如:
class m_class{
public m_class(){};
}
public class Demo1{
public static void main(){
m_class instance = new m_class();
}
}
此时main方法中的instance变量应是一个m_class类的实例的引用,类似C++中的对象指针。
3、标准的设计规范应该使类以更改器(set())与访问器((get()))的方式更改或访问其内部私有的数据域。
4、final实例域,被定义为final的域(成员变量)必须并只能在使用构造器对一个类进行实例化时被赋值,之后不再改变。
5、static定义的域为静态域或静态方法。其中静态域由类和所有属于该类的实例共有并只有一个,但是只能由类名对该域进行修改或复制。静态方法是由类所有的方法,不能由对象调用,从而不能访问对象中的实例域,只能由类名直接调用,并且只能访问类中的静态域。
6、方法参数。java中方法的参数可为值得直接传递或者对象的引用,传入的参数仅为实际参数的拷贝,所以方法不能改变所传递的实际参数。应在方法中对所传入的对象引用所指向的实际对象操作才行。例如:
public void tripleValue(float x){
x = x*3;
}
该方法不能使传入的任何float乘以3,因为方法中仅对传入浮点数的拷贝进行乘以3操作,并不改变原实际参数。而:
private class Employee{
private float salary;
public void riseSalary(float rate){
salary = salary*(1+rate);
}
public void tripleSalary(Employee x){
x.riseSalary(2);
}
}
这样,方法tripleSalary可以实现将x的salary变成三倍。
7、构造器可以重载,以参数表的不同来区分。
8、域初始化。对象中域(成员变量)的初始化基本有三种方式。
(1)、直接显式初始化,在类中的域定义的时候直接赋予其一个初值,如:
class Employee{
private float salary = 0;
}
(2)、使用构造函数,和第二点所述相同。
(3)、使用初始化块,初始化块是在域定义后对其进行赋初值的代码块,用大括号括起来。如:
class Employee{
private String name;
private float salary;
\\初始化块
{
name = “Harry”;
salary = 0;
}
}
另外,对静态域的初始化可以使用静态初始化块,只需在普通初始化块前加上static即可。
9、包。包(package)是类的集合,用来将类组织起来分块管理使用。同一个包中所有类可以互相调用(无论public或者private仅类),而某个类中仅仅public方法和域才能被包中其他类调用。包与包之间,只有public类才能被其他包的其他类调用。在程序中,有两种方法使用已经存在的包:
(1)、在类前加上完整包名,如:
java.util.Date today = new java.util.Date();
(2)、在程序开头使用import导入该包中的某个类,如:
Import java.util.Date;
之后便不用在该类前加上包名。另外可以导入整个包:
Import java.util.*;
便可以直接使用该包中所有类。
第一次写博客,新手,大概率犯错。继续加油!!!
- java学习笔记(一)java面向对象特性摘要
- java学习笔记-面向对象(一)
- JAVA面向对象学习笔记(一)
- Java学习笔记1-面向对象特性
- java学习笔记-------2011/3/12 面向对象(一)
- 黑马程序员_java学习笔记 5.java面向对象特性
- java面向对象的三大特性的学习笔记
- java学习笔记-类, 面向对象特性,包机制
- 【Java学习】java的面向对象特性
- java 面向对象笔记(一)
- Java面向对象笔记(一)
- java面向对象的三大特性(一)
- 黑马程序员——JAVA学习笔记——面向对象(三大特性)
- java学习之面向对象(一)
- java学习记录----面向对象(一)
- Java面向对象特性
- Java面向对象特性
- Java面向对象特性
- poj3253——哈夫曼树思想 + 优先队列解决
- JFreeChart
- 计算字符串中sun的个数并以SUNXXXX的形式表示出来
- kmp
- 关于Java虚拟机
- java学习笔记(一)java面向对象特性摘要
- jenkins配置的重要细节
- chrome 离线安装包下载
- Linux内核学习篇二:内核初始化
- LINUX的端口和服务
- java IO流总结
- Delphi基础:回调函数及其使用
- 分布式系统的一致性探讨
- 真正的新手使用ViewPager的总结