一.JDK 和IDE
因为我用的是mac电脑,所以我就介绍一些OS系统使用过程.
1、安装jdk:Mac系统自带jdk,但是版本是1.6,比较老了,我们需要在官网下载最新的Java8,安装比较简单,傻瓜式下一步就可以了。
2、配置jdk环境变量:终端输入 vim ~/.bash_profile 按回车,进入编辑模式后输入以下内容:
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH
按esc :wq回车,保存退出后在终端输入 source ~/.bash_profile 以使文件生效。
终端输入java -version可以查看Java版本,whereis java可以查看Java位置,echo $JAVA_HOME可以打印出JAVA_HOME。
3、安装eclipse:下载完成后解压,把.app文件拖进Application就可以了,然后创建一个workspace,也就是工作空间,存放代码的地方。
4、eclipse配置jdk:打开eclipse,偏好设置,Java,installed,勾选1.8版本,apply,OK。
二.Java修饰符
1. 修饰符分类
* 权限修饰符:private,默认的,protected,public
* 状态修饰符:static,final
* 抽象修饰符:abstract
2. 可以用来修饰类的: abstract, 默认的 ,final , public ;
public,将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类。
abstract,将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现。
final,将一个类生命为最终(即非继承类),表示他不能被其他类继承。
default,默认的修饰符,只有在相同包中的对象才能使用这样的类。
3.可以用来修饰成员变量的: private,默认的,protected,public ,static,final;
private(私有访问控制符), 指定该变量只允许自己的类的方法访问,其他任何类(包括子类)中的方法均不能访问。
default ,在同一个包中的类可以访问,其他包中的类不能访问。
protected(保护访问控制符), 指定该变量可以别被自己的类和子类访问。在子类中可以覆盖此变量。
public(公共访问控制符),指定该变量为公共的,他可以被任何对象的方法访问。
static(静态修饰符)指定变量被所有对象共享,即所有实例都可以使用该变量。变量属于这个类。
final,最终修饰符,指定此变量的值不能变。
4.可以用来修饰构造方法的:private,默认的,protected,public;
5.可以用来修饰成员方法的:private,默认的,protected,public, static,final , abstract ;
private(私有控制符) 指定此方法只能有自己类等方法访问,其他的类不能访问(包括子类)
protected(保护访问控制符)指定该方法可以被它的类和子类进行访问。
public(公共控制符)
final, 指定该方法不能被重载。
static, 指定不需要实例化就可以激活的一个方法
请注意以下方法继承的规则:父类中声明为 public 的方法在子类中也必须为 public。 父类中声明为 protected 的方法在子类中要么声明为 protected,要么声明为 public,不能声明为 private。 父类中声明为 private 的方法,不能够被继承。
三.Java变量
局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。
成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量可以被类中方法、构造方法和特定类的语句块访问。
类变量:类变量也声明在类中,方法体之外,但必须声明为static类型。
四. Java的两大数据类型:
1. 内置数据类型
数据类型提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。
(1) byte 数据类型是8位、有符号的,以二进制补码表示的整数;
最小值是-128(-2^7);
最大值是127(2^7-1);
(2) short 数据类型是 16 位、有符号的以二进制补码表示的整数
最小值是-32768(-2^15);
最大值是32767(2^15 - 1);
(3)int 数据类型是32位、有符号的以二进制补码表示的整数;
最小值是-2,147,483,648(-2^31);
最大值是2,147,483,647(2^31 - 1);
(4)long 数据类型是 64 位、有符号的以二进制补码表示的整数;
最小值是-9,223,372,036,854,775,808(-2^63);
最大值是9,223,372,036,854,775,807(2^63 -1);
默认值是 0L;例子: long a = 100000L,Long b = -200000L。"L"理论上不分大小写,但是若写成"l"容易与数字"1"混淆,不容易分辩。所以最好大写。
(5) float 数据类型是单精度、32位、符合IEEE 754标准的浮点数;
float 在储存大型浮点数组的时候可节省内存空间;
默认值是0.0f;
(6)double 数据类型是双精度、64 位、符合IEEE 754标准的浮点数;
浮点数的默认类型为double类型;
默认值是0.0d;
(7)boolean数据类型表示一位的信息;
只有两个取值:true 和 false;
这种类型只作为一种标志来记录 true/false 情况,默认值是false;
(8)char 类型是一个单一的 16 位 Unicode 字符 ;
最小值是\u0000(即为0);
最大值是\uffff(即为65,535);
char 数据类型可以储存任何字符;
例子:char letter = 'A';。
2. 引用数据类型
在Java中,引用类型的变量非常类似于C/C++的指针。引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型,比如 Employee、Puppy 等。变量一旦声明后,类型就不能被改变了。
对象、数组都是引用数据类型。
所有引用类型的默认值都是null。
一个引用变量可以用来引用与任何与之兼容的类型。
五.运算符
1.算术运算符
2.关系运算符
3.位运算符(这是个难点)
4.逻辑运算符
5.赋值运算符
6.条件运算符
条件运算符也被称为三元运算符。该运算符有3个操作数,并且需要判断布尔表达式的值。该运算符的主要是决定哪个值应该赋值给变量。
variable x=(expression)?valueiftrue:valueiffalse
PS:2017年11月14修订,