java01
- 简单
- 面向对象
- 可移值
- 高性能
- 分布式(web url
- 动态性(反射
- 多线程
- 安全性
- 健壮性
java的成功
- 互联网
java的三大版本
-
javase 标准版(桌面,控制
-
javame嵌入式 -
javaee (web ,服务器
JDK ,JRE,JWM
- JDK包含全部开发者工具
- jre包含运行换环境
- jvm虚拟机
代码
public class Hello{
publc static void main(String[] args){
System.out.print("hello");
}
}
#javac Hello.java
#java Hello
java 运行机制
- 编译型(java->计算机
- 解释性(用一下编译一下
- 源程序->.class(字节码)
java的基础语法
- 注释
file Struc
//
/**
*/
javadoc
百度有趣的代码注释
关键字
程序员
-
变量名只可以字母 $ 下划线开始
-
中文名也可以是变量名
-
标识符号是大小写敏感的
数据类型
- 强类型语言(要求变量的类型都必须定义
- 基本类型 int double float short long byte-128-127
- 浮点数
- long后面加L
- float后面加F
- String不是关键字是一个类
- 引用类型
- 类
- 接口
- 数组
import java.math.BigDecimal;
public class De1 {
public static void main(String[] args) {
int i=10;
int i2=010;//八
int i3=0x10;//十六
System.out.println(i);
System.out.println(i2);
System.out.println(i3);
/***********************
* 银行的价钱
*/
float f=0.1f;
double d=1.0/10;
System.out.println(f==d);
float d1=2133333333333333f;
float d2=d1+1;
System.out.println(d1==d2);
//不精确的比较 float 是有误差的
//一定避免使用浮点数进行比较
//BigDecimal
char c1='c';
System.out.println((int)c1);
//所有的字符本质就是数字
//unicode 2字节 65536
//U0000 uffff
char c3='\u0061';
System.out.println(c3);
//转义字符
System.out.println("hello\tworld\n你好");
//
String sa=new String("hello,world");
String sb=new String("hello world");
System.out.println(sa==sb);
System.out.println(sa.equals(sb));
String sc="hello world";
String sd="hello world";
System.out.println(sc==sd);
System.out.println(sc.equals(sd));
}
}
- char 的本质就是数
基础类型转换
- byte,short,char->int->long64->float32->double(小数的优先级)
- 强制类型转换(高到低
- 自动转换(低到高
public class Demo3 {
public static void main(String[] args) {
int i=128;
byte b=(byte)i;//强制转换
System.out.println(i+" "+b);//128 -128内存溢出、
/**
* 1.不能布尔值转换
* 2.不能把对象转换为不相关
* 3.低到高强制转换
* 4.可能存在内存溢出
*/
System.out.println((int)23.7);//23
System.out.println((int)-45.89f);
char c='a';
int d=c+1;
System.out.println(d);
System.out.println((char)d);
//jdk7可以用下划线分割
int money=10_0000_0000;
System.out.println(money);
int year=20;
//int total=money*year;
long total=money*year;//默认抓换为int;
System.out.println(total);
long total3=money*(long)year;
System.out.println(total3);//常见问题
//L l
}
}
变量
-
可以变化的量;
-
基本类型 String引用类型
-
作用域
变量的类型
-
类变量 static
-
实例变量 没有static
-
局部变量
-
public class Demo05 { static int a=1000; static double salary=25000; String name; public static void main(String[] args) { //局部变量在方法里面;声明和初始化 int i=10; // Demo05 demo05=new Demo05(); System.out.println(demo05.name); System.out.println(a); } public void add(){ } }
常量是不允许改变的
- fianl static 修饰符号不分顺序
-
命名规范
骆峰原则
常量大小
类首字母大写
变量小写
方法