赞
踩
【读Java:A Beginner’s Guide后对基础概念的整理,已熟练掌握的不展开,仅提一下,都写在纸质笔记本上。基础不牢,地动山摇!】
Java SE:Java Platform Standard Edition
Java EE:Java Platform Enterprise Edition(J2E/Jakarta EE)
java&c++:
共同点:面向对象编程
不同点:实际应用、基本原理区别
java特性
安全性:限制在java执行环境中(沙箱)
可移植性:跨平台
Java编译器结果是字节码,由JVM执行->因此平台有JVM即可。
JIT/提前编译器
简单、OOP、Robust、多线程、体系结构中立、解释型、高性能、分布式、动态
OOP:围绕数据、数据控制访问代码
创建:javac x.java
运行:java x
public:访问修饰符
括号内变量:形参
float:用4个字节来存储
double:8个
整型比浮点快,可减少开销
关键词保留了goto 但不能使用
标识符:区分大小写、以字母、下划线、$开头,但是不能以数字开头
变量:命名的内存地址
强类型语言检查确保兼容性、可移植性
byte:占8个二进制位的整数
short 16(3万) long 64 int 32(21亿)
不支持无符号数
char也保留整数的二进制值有时也能归入整数类型(0-65536)
和其他语言不同的是采用Unicode
字面值literal:人类可读的语言形式出现的固定值
也就是常量。其中可以加下划线方便阅读。
八进制:0开始 十六:0x 二进制:0B
\r | 回车 |
---|---|
\f | 换页 |
\t | 水平制表 |
\b | 退格 |
\ddd | 八进制常量 |
\uxxxx | 十六进制 |
字符串也是字面值
运算符
算数:加减乘除求余自增自减
关系:大于小于等
逻辑:与或非异或 计算每一个操作数
短路与短路非(或者称条件与)
赋值运算符:+=之类
自动类型转换
强制转换
类型升级原则:混用不同类型数据都会被转换成同一类型
1. char\byte\short都变成int
2.有一个long 转换成long 有一个float\double转换成float\double
控制台输入 行缓冲
缓冲:读取字符之前用于保存字符的一小块内存
按下enter生成一个回车和换行
break可用作文明的goto:
continue:直接进入下一次迭代
类的成员:方法和实例变量
实参:向方法传递的值
类封装了功能
关键词this对对象的引用,自动传递给方法,用于找到实例变量
垃圾回收:收集没用的对象以便重用内存的机制
e.g. int sample[]=new int[10];
不规则数组
int sample[][]=new int[][];
int[][] sample=new int[][];
如果要返回数组,可用int[]
foreach循环(增强型for循环)
自动遍历整个数组
for(int x:nums) sum+=x;
x自动等于下一个元素的值
只读不修改元素的值
字符串不是字符数组,是对象
方法 | 描述 |
---|---|
boolean equals | |
charAt | 在某位置的字符 |
compareTo | |
indexOf(str)) | 查找匹配的子串返回第一个匹配的索引 |
lastIndexOf |
String:不可变字符串
StringBuffer/SreingBuilder:字符串对象可变
截取一段子串:
str.substring(3,10);//从第三个字符到第10个字符
命令行实参
args[]
java aDemo one
args[0]=“one”;
位运算符
按位与或非异或左右移
检测二进制每一位是否为1
int t;
byte a;
for(t=128;t>0;t/=2)
if((val&t)!=0)...
右移保持符号位不变
无符号右移>>>无符号右移
*2左移 \2右移
善用三元运算符?
访问修饰符:public、private、protected
向方法传递对象
int sample(Block ob)
如何传递实参
方法重载
同一个类中多个方法可共享一个方法,形参声明不同即可。实现多态性。
自动转换:形参和实参不能直接匹配
byte,short可自动转换成int
float可转换成double
签名:方法名+形参列表
重载构造函数:允许一个对象初始化另一个对象
递归:调用自身
有方法调用额外开销,过多可能会导致堆栈溢出
static:无需创建对象ob.y就可以引用
类名.静态变量名即可引用
static方法限制
static代码块
在使用类之前执行
嵌套类
在封装类中声明类,内部类有权访问外层类的变量和方法
varargs创建可变长度的实参列表
static void sample(int…v)
sample(1,2,3);
必须放在形参列表最后
可以方法重载
但如果形参为空,可能会有歧义
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。