java类和对象学习笔记(一)基础篇需要注意的知识点
来源:互联网 发布:电影台词搜索软件 编辑:程序博客网 时间:2024/05/16 17:35
一个简单的例子:
public class Circle{public double radius;//半径public static int NumOfObject;
public double getArea(){return radius*radius*PI;}}
1.静态方法和实例方法
静态方法可以使用:类名.方法名(参数) 的格式来调用。比如我们常用的Math.mathodName()。用对象.方法名(参数)也是可以的。
静态方法不依赖于实例变量,也就是和对象中的属性关系不大,甚至没有关系。这时候就可以加关键字static了。
实例方法必须使用对象.方法名()的格式。它依赖于对象的属性来实现。
2.对象的引用和不引用
多数时候我们是这样的:
Circle cir=new Circle();
cir是一个引用(其实可以看成指针),指向被创建的对象。其实也未必非要引用。
比如:
new Circle();
或者
System.out.println("Area is "+ new Circlr(5).getArea());
这种方式创建的叫做匿名对象。
没有被引用的对象会被Java虚拟机自动回收它占的空间。Java真贤惠啊。。
这样用厉害一点吧(?
3.静态变量、常量和方法
实例变量就是radius那样的,绑定到类的某个特定实例,存储在互不相关的内存中,不能被同一个类的不同对象影响。
如果想让一个类的所有实例共享数据,就要使用静态变量(static variable)。变量值存在一个公共的内心地址,如果某一个对象修改了它的值,所有的对象都会受影响。
类中的常量是被该类的所有对象共享的,所以应该声明为final static。
例如Math类中的PI是这样定义的:
final static double PI = 3.14159265358979323846;
调用的话就Math.PI。和静态方法一样,静态变量也可以使用类名调用,这样用可读性会比较高。
静态变量和静态方法既可以在类的实例方法中使用,也可以在静态方法中使用。但实例变量和实例方法不可以在静态方法中使用了。
栗子:
public class Foo{
int i=5;
static int k=2;
public static void main(String[] args){
int j=i;//wrong, i is an instance variable
m1();//wrong, m1() is an instance method
}
public void m1(){i = i + k + m2(i, k);}//correct
public static int m2(int i, int j) {return i+j;}//correct}
0 0
- java类和对象学习笔记(一)基础篇需要注意的知识点
- Java学习笔记之需要注意的基础知识点
- java学习基础需要注意的几个知识点
- 学习java基础时需要注意的几个知识点
- 学习python类需要注意的知识点
- C#基础学习需要注意的几个知识点
- C语言需要注意的基础知识点(兰亭风雨)
- 需要注意的知识点,一老忘记
- Python学习笔记(基础知识点一)
- java基本知识(2)----需要注意的小知识点
- java静态方法的一个小知识点(需要注意)
- Java学习笔记(一)Java基础和类
- Java学习(一)基础知识点
- JAVA学习笔记(12)--类和对象 详解(一)
- java需要学习的知识点
- Java学习的基础概念和知识点
- Java基础知识点学习笔记
- Java基础知识点学习笔记
- android sqlite的命令使用
- iOS实现App之间的内容分享
- @RequestParam映射请求参数
- 有关CAN-BUS与LIN-BUS的区别 !
- RMAN迁移表空间到ASM
- java类和对象学习笔记(一)基础篇需要注意的知识点
- OpenGL ES2.0中shader,当顶点坐标做旋转和平移的过程中,顶点法向量不需要要做相应的旋转
- tomcat_知识
- Java学习记录(4)——基本类型的类型转换
- jackson 枚举 enum json 解析类型 返回数字 或者自定义文字
- C++ error LNK2019: 无法解析的外部符号 _WinMain(编译问题解决方法)
- APK反编译
- 关系数据库规范化(例题解析)
- C#中的虚方法的使用个人理解