.java
AAA.java
public class AAA{
public static void main(String[] args){
System.out.pringln("hello world");
}
}
AAA 类名
必须和文件名保持一致
变量:
包含字母,数字,汉字,特殊符号_ $
不能是java关键字
不能以数字开头
建议首字母小写
变量定义必须声明类型
基本数据类型: 8种
int double char boolean byte short long float
数值:
整数: byte short int long
小数: float 3.4f double
字符:
char 可以表示单个字符或者汉字 ''
判断:
boolean 只有两个值 true/false
引用数据类型:
String 数组 类 接口
定义:
int i=3;
数据类型 变量=值;
int j;
j=5;
数据类型 变量;
运算符:
算数运算符: + - * /(整除) %(取余)
比较运算符: > < >= <= != ==
赋值运算符: = += -= *= /= %=
int i=5;i+=2;//等效于i=i+2
逻辑运算符: &&(与 两边条件必须同时满足) ||(两边只需满足一边即可) !(对原值取反)
单目运算符: ++(自增) --(自减)
int i=3; int j=i++; //i=4 j=3
int m=6; int n=++m; // m=7 n=7
运算是针对m来说,而赋值是针对n来说的
++在前,运算在前,表示先运算后赋值
++在后,运算在后, 表示先赋值后运算
三目运算符:
条件表达式 ? 值1 : 值2;
当条件表达式为true时,执行值1; 否则执行值2
程序的执行结构:
1. 顺序执行结构
正常程序是自上往下顺序执行的
2. 分支选择结构
if(条件){语句} //当条件为true时,执行该语句
if(条件){语句1} else{语句2} //当条件为true时,执行语句1;否则执行语句2
if(条件1){语句1}else if(条件2){语句2}..else{语句n}
//满足哪个条件,执行哪个语句;上述都不满足时,执行语句n
switch 。。case
int i=5;
switch(变量){
case 1:语句1;break;
case 2:语句2;break;
case 3:语句3;break;
case 4:语句4;break;
default: 语句n;
}
当初始值等于哪个case值时,执行相应的语句;
break表示跳出switch 。。case结构
变量类型: 只能是byte,short,int,char 而String类型只在jdk7.0以上版本支持(包括7)
3. 循环执行结构
for循环
for(int i=1;i<=10;i++){}
while循环
int i=1;
while(i<=10){
输出语句
i++;
}
do。。while循环
int i=1;
do{
输出语句
i++;
}while(i<=10);
for,while先判断后执行 do..while 先执行后判断 即使条件不满足,也会执行一次
4. 程序中断执行
break 跳出整个循环
continue 跳出本次循环
数组:
特点: 它只能存储同种类型的多个数据,数组长度是事先定义好的,数组下标是从0开始的
长度:
*length 数组长度是属性,不带() String 字符串长度是个方法 length()
定义:
int[] arr=new int[n]; // n代表长度,必须定义好长度
int[] arr2={12,23,45};
int[] arr3=new int[]{12,23,45,45};
取值:
arr3[1]; //23
循环遍历:
for(int i=0;i<arr3.length;i++){
System.out.println(arr3[i])
}
类和对象:
class 类名{
属性;// String name; int age; char sex;
方法;// eat() study() sleep()
}
class Test{
public static void main(String[] args){
类名 对象=new 类名();
对象.属性;
对象.方法();
}
}
方法:
有参和无参的方法
根据有没参数,参数就是() 里面的变量
有返回值(返回值类型)和无返回值的方法(void)
return 返回值;
return之后的语句不回执行
String: 字符串:
String s="efqefgjhf";
String s=new String("efefgyh");
方法:
int length() 长度:
char charAt(int index) 获取指定位置的字符
int indexOf(char ch) 获取指定字符第一次出现位置的索引
String subString(int index) 截取某个索引之后的字符串
String subString(int begin,int end) 截取两个索引中间的字符串
String toLowerCase 转为小写
String toUpperCase 转为大写
boolean equals(String s) 字符串比较
String trim() 去空格 只能去前后空格
String[] split(String s) 拆分字符串
String replace(char old,char new) 替换指定字符
String replaceAll(String old,String new ) 替换指定字符串
练习:
1. 新建Person(人类),提取若干属性和方法
2. 新建Studnet(学生类),提取若干属性和方法
3. 新建Teacher(老师类),提取若干属性和方法
最后在测试类main方法里测试调用老师和学生的上述属性和方法
======================================================================
访问权限修饰符:
修饰类,属性和方法
public protected 默认 private 访问权限逐个减小
public: 公共的;表示在该项目中任何地方都可以访问
protected: 受保护的: 只能在本包或者异包中子类可以访问(子类概念后面会讲到)
默认: 前面什么都不写就是默认的,只能在本包中访问
private: 私有的,只能在本类中访问
===============================================================================
作业:
创建Person(人类),Studnet(学生类), Teacher(老师类);
要求每个类里面至少有4个属性,2个以上普通方法(不包括getter,setter方法)
每个属性都要有getter,setter方法,
运用继承,封装的思想, 访问权限修饰符自己处理
写上相应的包
com.mypack.entity Person
com.mypack.entity.sub Studnet Teacher
com.mypack.test Test
************************************************************************************************************
面向对象:
类和对象:
类:
public class 类名{
属性;
方法;
}
public class 测试类{
public static void main(Stringp[] args){
类名 对象=new 类名();
对象.属性;
对象.方法();
}
}
属性: 数据类型 变量;
方法:
构造方法:
用来初始化对象用的,new 的时候调用的
有参的和无参的构造方法
方法名和类名一致,没有返回值类型
普通方法:
对象的行为,功能
有参的 和无参的方法
有返回值和没返回值的方法
方法的重载:
用在本类当中 overload
方法名相同,参数项不同(包括参数个数及类型不同),跟返回值类型,修饰符没关系
普通方法的重载和构造方法的重载
关键字:
访问权限修饰符
修饰类,属性和方法
public: 公共的 ,任何地方都能访问
protected: 受保护的 ,本包和异包中子类可以访问
默认: 什么都不加就是默认的,只能在本包中访问
private: 私有的,只能在本类中访问
this关键字:
用在本类当中 表示当前对象
this.属性
super关键字:
static关键字:
1. static 属性: 类变量 和所有对象之间是一对多关系
2。 static 方法 静态方法只能调用静态内容
一般建议通过类名打点调用
面向对象的特征:
1, 封装
属性私有,通过公共的getter,setter方法来访问
2. 继承
子类能够继承父类的属性和普通方法 ,构造方法不能被继承
class 子类 extends 父类{}
继承只支持单项继承
3. 多态
、
4. 抽象(有些资料)
AAA.java
public class AAA{
public static void main(String[] args){
System.out.pringln("hello world");
}
}
AAA 类名
必须和文件名保持一致
变量:
包含字母,数字,汉字,特殊符号_ $
不能是java关键字
不能以数字开头
建议首字母小写
变量定义必须声明类型
基本数据类型: 8种
int double char boolean byte short long float
数值:
整数: byte short int long
小数: float 3.4f double
字符:
char 可以表示单个字符或者汉字 ''
判断:
boolean 只有两个值 true/false
引用数据类型:
String 数组 类 接口
定义:
int i=3;
数据类型 变量=值;
int j;
j=5;
数据类型 变量;
运算符:
算数运算符: + - * /(整除) %(取余)
比较运算符: > < >= <= != ==
赋值运算符: = += -= *= /= %=
int i=5;i+=2;//等效于i=i+2
逻辑运算符: &&(与 两边条件必须同时满足) ||(两边只需满足一边即可) !(对原值取反)
单目运算符: ++(自增) --(自减)
int i=3; int j=i++; //i=4 j=3
int m=6; int n=++m; // m=7 n=7
运算是针对m来说,而赋值是针对n来说的
++在前,运算在前,表示先运算后赋值
++在后,运算在后, 表示先赋值后运算
三目运算符:
条件表达式 ? 值1 : 值2;
当条件表达式为true时,执行值1; 否则执行值2
程序的执行结构:
1. 顺序执行结构
正常程序是自上往下顺序执行的
2. 分支选择结构
if(条件){语句} //当条件为true时,执行该语句
if(条件){语句1} else{语句2} //当条件为true时,执行语句1;否则执行语句2
if(条件1){语句1}else if(条件2){语句2}..else{语句n}
//满足哪个条件,执行哪个语句;上述都不满足时,执行语句n
switch 。。case
int i=5;
switch(变量){
case 1:语句1;break;
case 2:语句2;break;
case 3:语句3;break;
case 4:语句4;break;
default: 语句n;
}
当初始值等于哪个case值时,执行相应的语句;
break表示跳出switch 。。case结构
变量类型: 只能是byte,short,int,char 而String类型只在jdk7.0以上版本支持(包括7)
3. 循环执行结构
for循环
for(int i=1;i<=10;i++){}
while循环
int i=1;
while(i<=10){
输出语句
i++;
}
do。。while循环
int i=1;
do{
输出语句
i++;
}while(i<=10);
for,while先判断后执行 do..while 先执行后判断 即使条件不满足,也会执行一次
4. 程序中断执行
break 跳出整个循环
continue 跳出本次循环
数组:
特点: 它只能存储同种类型的多个数据,数组长度是事先定义好的,数组下标是从0开始的
长度:
*length 数组长度是属性,不带() String 字符串长度是个方法 length()
定义:
int[] arr=new int[n]; // n代表长度,必须定义好长度
int[] arr2={12,23,45};
int[] arr3=new int[]{12,23,45,45};
取值:
arr3[1]; //23
循环遍历:
for(int i=0;i<arr3.length;i++){
System.out.println(arr3[i])
}
类和对象:
class 类名{
属性;// String name; int age; char sex;
方法;// eat() study() sleep()
}
class Test{
public static void main(String[] args){
类名 对象=new 类名();
对象.属性;
对象.方法();
}
}
方法:
有参和无参的方法
根据有没参数,参数就是() 里面的变量
有返回值(返回值类型)和无返回值的方法(void)
return 返回值;
return之后的语句不回执行
String: 字符串:
String s="efqefgjhf";
String s=new String("efefgyh");
方法:
int length() 长度:
char charAt(int index) 获取指定位置的字符
int indexOf(char ch) 获取指定字符第一次出现位置的索引
String subString(int index) 截取某个索引之后的字符串
String subString(int begin,int end) 截取两个索引中间的字符串
String toLowerCase 转为小写
String toUpperCase 转为大写
boolean equals(String s) 字符串比较
String trim() 去空格 只能去前后空格
String[] split(String s) 拆分字符串
String replace(char old,char new) 替换指定字符
String replaceAll(String old,String new ) 替换指定字符串
练习:
1. 新建Person(人类),提取若干属性和方法
2. 新建Studnet(学生类),提取若干属性和方法
3. 新建Teacher(老师类),提取若干属性和方法
最后在测试类main方法里测试调用老师和学生的上述属性和方法
======================================================================
访问权限修饰符:
修饰类,属性和方法
public protected 默认 private 访问权限逐个减小
public: 公共的;表示在该项目中任何地方都可以访问
protected: 受保护的: 只能在本包或者异包中子类可以访问(子类概念后面会讲到)
默认: 前面什么都不写就是默认的,只能在本包中访问
private: 私有的,只能在本类中访问
===============================================================================
作业:
创建Person(人类),Studnet(学生类), Teacher(老师类);
要求每个类里面至少有4个属性,2个以上普通方法(不包括getter,setter方法)
每个属性都要有getter,setter方法,
运用继承,封装的思想, 访问权限修饰符自己处理
写上相应的包
com.mypack.entity Person
com.mypack.entity.sub Studnet Teacher
com.mypack.test Test
************************************************************************************************************
面向对象:
类和对象:
类:
public class 类名{
属性;
方法;
}
public class 测试类{
public static void main(Stringp[] args){
类名 对象=new 类名();
对象.属性;
对象.方法();
}
}
属性: 数据类型 变量;
方法:
构造方法:
用来初始化对象用的,new 的时候调用的
有参的和无参的构造方法
方法名和类名一致,没有返回值类型
普通方法:
对象的行为,功能
有参的 和无参的方法
有返回值和没返回值的方法
方法的重载:
用在本类当中 overload
方法名相同,参数项不同(包括参数个数及类型不同),跟返回值类型,修饰符没关系
普通方法的重载和构造方法的重载
关键字:
访问权限修饰符
修饰类,属性和方法
public: 公共的 ,任何地方都能访问
protected: 受保护的 ,本包和异包中子类可以访问
默认: 什么都不加就是默认的,只能在本包中访问
private: 私有的,只能在本类中访问
this关键字:
用在本类当中 表示当前对象
this.属性
super关键字:
static关键字:
1. static 属性: 类变量 和所有对象之间是一对多关系
2。 static 方法 静态方法只能调用静态内容
一般建议通过类名打点调用
面向对象的特征:
1, 封装
属性私有,通过公共的getter,setter方法来访问
2. 继承
子类能够继承父类的属性和普通方法 ,构造方法不能被继承
class 子类 extends 父类{}
继承只支持单项继承
3. 多态
、
4. 抽象(有些资料)