从入行以来,总是去看其他人的博客,很少自己来总结,
原因有二:
一是因为自己的语文水平实在有限,无法很有效的组织语言。
二是技术无法达到写出博文的水平。
为此特意用博客记录我学习的点滴,提高自己的技术水平。
如果能够帮助到其他人当然也是极好的。
万事万物皆对象,这是我从学习java时候经常听到的话,特此我参考thinking in java这本书来开始我的第一篇技术博文
我们在日常开发中经常会创建对象
如:String str=new String("abc");
str:是String对象的引用。它存放在堆栈中,指向堆中的对象
new String("abc"):是实体对象,他存在放在堆中,另外abc完成了对对象的赋值
简单的例子,我们引出来3个知识点:
①:引用
②:对象的创建
③:对象的保存地址
1:对象的创建
使用new关键字,java中有一些不使用new来创建对象的数据类型:
基本数据类型:boolean < byte < char < short < int < long < float < double
包装(wrapper)类型:Boolean Byte Character Short Integer Long Float Double 特殊包装类型(没有对应的基本类型):BigInteger,BigDecimal
BigInteger:支持任意精度的整数
BigDecimal:支持任意精度的定点数字
基本数据类型存放在堆栈中,高效存取。
2:对象的作用域
类:class关键字定义类的类型
成员变量(属性):
基本数据类型,默认值初始化值
boolean false
char null
byte 0
short 0
int 0
long 0L
float 0.0f
double 0.0d
局部变量:需要设置初始化值,否则会得到一条编译期错误
成员方法(方法):
基本形式:
1 class Model{ 2 public int method(int arg){ 3 return arg*2; 4 } 5 }
static关键字:
使用static关键字修饰的变量和方法,与类的对象没有任何关系,不需要使用new关键字来创建对象,因此也无法访问类对象中的其他非static修饰的变量和方法
举例:
public class StaticTest{ static int i=10; public static void main(String[] args){
//创建俩个对象
StaticTest st1=new StaticTest();
StaticTest st2=new StaticTest();
//无论是st1.i 还是st2.i 值都是10,因为它们引用的是同样的内存区域
int a=st1.i;
int b=st2.i;
int c=StaticTest.i;//使用类名引用静态变量
StaticFun fun=new StaticFun();
fun.incr(); //与下面等价,优先使用类名引用
StaticFun.incr();
}
}
class StaticFun{
static void incr(){//静态方法
StaticTest.i++;
}
}
接下来我们来分析一下,最常用的main方法,看下面一个例子
1 public class Property { 2 public static void main(String[] args){ 3 //System:java.lang.System,out是static PrintStream对象,print是方法,"打印一句话"是方法的参数 4 System.out.print("打印一句话"); 5 }
6 }
时间过得好快,一眨眼的功夫一上午就过去了,-。-虽然只有俩个小时,通过这一章我们学到了类,变量,方法,static。接下来一章跟着thinking in java 我们学习java运算符。