一、初识JAVA
1979年,Bjarne Strousrup 发明了C++语言。
计算机语言:人类与计算机交流的语言。
计算机语令:计算机能理解的二进制格式的命令。
程序:计算机指令的有序集合。
高级语句:符合人类的语言习惯,同时计算机也能够识别。
垃圾回收器(G.c):定时检查内存中已不需要使用的数据,并将其销毁。
软件开发流程:需求、分析、设计、编码、测试。(瀑布式模型)
public class HelloWorld {
public static void main(String[] args) {
System.out.println("helloworld");
}
}
二、java基础语法
关键字:public(公共的)最基础的关键字
Java基本类型共有八种,基本类型可以分为三类,字符类型char,布尔类型boolean以及数值类型byte、short、int、long、float、double。数值类型又可以分为整数类型byte、short、int、long和浮点数类型float、double。
当需要判断时:基本都用boolean
有小数点的使用double
一般正整数都使用int关键字的数据类型
1T=1024G=1024*1024M=1024*1024*1024KB
1kb=1024B=1024*8bit
变量:用于存储数据。在java中必须要先声明变量才能使用。
运算符:
1.两个数字之间的运算
import java.util.Scanner;
public class p {
public static void main(String[] args)
{
System.out.print("请输入第一个数:");
Scanner sc=new Scanner(System.in);
int n1=sc.nextInt();//定义一个变量属于int类型
System.out.print("请输入第二个数:");
int n2=sc.nextInt();定义第二个变量属于int类型
System.out.println(n1+"*"+n2+"="+n1*n2);//两个数相乘
System.out.println(n1+"+"+n2+"="+(n1+n2));//两个数字相加
System.out.println(n1+"/"+n2+"="+(double)n1/n2);//两个数字相除
System.out.println(n1+"-"+n2+"="+(n1-n2));//两个数字相减
2.简单求图形周长的源代码
import java.util.Scanner;
public class p2{
public static void main(String[] args) {
System.out.println("请输入矩形的长:");
Scanner sc=new Scanner(System.in);//定义一个条件
int n1=sc.nextInt();//输入一个int类型的变量
System.out.println("请输入矩形的宽:");
int n2=sc.nextInt();//定义第二个int类型的变量
System.out.print(2*n1+2*n2);//输出一个带数学公式的输出
3.运用三目运算符的经典求奇数偶数的源代码
import java.util.Scanner;
public class p5 {
public static void main(String[] args) {
System.out.print("请输入一个正整数:");
Scanner sc=new Scanner(System.in);
int n1=sc.nextInt();//定义输入数字的类型为int
String result=(n1%2==0?"是偶数":"是奇数");
System.out.println(result);
三、程序流程控制
布尔运算符:&&、||、&、……、!
&&:并且
||:或者
!:非(否定的意思)
比如:
A<=10&&A>0(A小于等于10并且大于0)
Int A;
(A<=10)&&(A>0);
True&&!(false);
If语句:
int a = 10;
if(a >= 0)
System.out.println(“a是正数”);
if( a % 2 == 0)
System.out.println(“a是偶数”);
If else语句:
int n = 12;
if(n % 2 != 0)
System.out.println(“n是奇数”);
else System.out.println(“n不是奇数”);
循环语句:
While语句:
Boolean a=true;
while(true){
System.out.println(‘a’);
}
Do while循环语句:
do{
循环体;
}while(循环条件);
比如:
int i = 0;
do{
System.out.println(i); //输出变量的值
i++; //变量增加1
}while(i < 10);
For循环:
for(初始化语句;循环条件){
循环体;
}
例如:
for(int i = 0;i < 10;i++){
System.out.println(i);
}
跳转语句:
Break:立即停止循环
Continue:结束本次循环跳转到下一迭代循环
四、类、对象和包
对于每个对象,我们会编写一个类来描述对象的属性和行为。
类是对象的描述。对象是类的实例。
对象有属性和行为组成。
属性是对象所具有的特征,二行为是对象可以做的动作。
- 编写一个类
Public class 类名{}
- 实例化对象
Public class 类名{
Public String name//名字
}
- 访问对象的属性和方法
类名 name=new 类名;
(小写)类名.name=”天天”;
- this 引用
this.name=name;
- 类中可以是、使用import来导入其他包中的类
五.对象的行为
java 对象的行为
1.对象的行为包括对象的定义和对象的调用(先进后出 栈)
2.形参 实参
形参在方法声明定义是用
实参在方法调用时用
3.Java 是按值传递 故基本类型和引用数据类型是有区别的。
基本数据类型传递值进去,引用数据类型传递引用进去。
4.方法重载
即方法的名称相同,形参不同。
形参不同包括形参的个数不同、类型不同或顺序不同。
5.构造器
作用是用来创建对象
可以重载,可以有任意的权限。
当权限为private时,是单态。
6.this和super
在构造器中只能存在与第一行,所以只能出现一个。
具体的区别:
. ()
this 调用当前对象的属性或方法 调用该对象的其他构造器
super 调用父类的属性或方法 调用父类的构造器
六、数组
//定义数组
//语法1:数据类型[] 变量;
//语法2:数据类型 变量[];
// int[] numbers; //声明一个int类型的数组(数组的每一个元素必定是int类型),名称为numbers
//给数组赋值
//语法:数组变量 = new 数据类型[长度];
// numbers = new int[4];//给数组numbers赋值,其长度为4
//合并书写
//int[] numbers = new int[4];
//
// 操作数组中的元素
// 修改数组的元素
// 数组变量名[下标] = 表达式;
// numbers[0] = 2;//将2,赋值给数组的第1项(下标为0的元素)
// numbers[3] = 15;
/ numbers[5] = 1;//这句代码,将导致下标越界
//
// 得到数组中的元素
// 数组变量名[下标]
// System.out.println(numbers[2]);
// numbers[1] = numbers[0] + numbers[3];
// numbers[0] = numbers[1]*2;
//
// 获得数组的长度
// 数组变量名.length
// System.out.println(numbers.length);
//
// 输出数组最后一项的值
// System.out.println(numbers[numbers.length - 1]);
}
}
例如:
Aoteman aotu1 = new Aoteman("奥特曼1", 30, 10);
Aoteman aotu2 = new Aoteman("奥特曼2", 30, 10);
Aoteman aotu3 = new Aoteman("奥特曼3", 30, 10);
Aoteman aotu4 = new Aoteman("奥特曼4", 30, 10);
Aoteman aotu5 = new Aoteman("奥特曼5", 30, 10);
Aoteman[] aotu={aotu1,aotu2,aotu3,aotu4,aotu5};
Piant wan = new SnowPea();
Piant wan1= new Peashooter();
Piant wan2= new CherryBomb();
Piant wan3= new PotatoMine();
Piant wan4= new Chomper();
piant = new Piant[]{wan,wan1,wan2,wan3,wan4}
七、继承
如果要扩展一个已有的类,并继承该类的属性和行为。可以建立一个新的类使用继承。
Public class plant{}
如果要继承上一个类
Public class cao extends plant{}
(后面的知识大多数我还不怎么清楚)