第一个字符必须是字母
、_
或$
,后面的字符 可以是字母
,下划线
,$
或数字
。
Java中数据的基本类型(不包括逻辑类型)按精度从低到高排列:
byte short char int long float double
★自动转换:当把级别低的变量的值赋给级别高的变量时,系统自动完成数据类型的转换。
例: float f =5;
★强制转换:当把级别高的变量的值赋给级别低的变量时,必须使用显示类型转换运算。
显示转换的格式:(类型名)要转换的值; (低)高
例:float h =5.21f;
int a=(int)h;
[public][abstract | final] class classname[extends father_class] [implements interfaces_name]
{
//变量成员声明及初始化
//方法声明及方法体
}
注:每个编译单元(文件)只能有一个public类。即每个编译单元只能有一个公开的接口。public类的名字必须和这个编译单元的文件名完全相同。
[public | protected | private][static][final][abstract][native][synchronized]
返回类型 function_name(argv[0] value0,[argv[1] value1...]) [throw exception1,exception2...]
{
方法体
}
在静态方法中只能直接调用静态变量,静态方法或对象的属性和方法,不能直接使用非静态方法和非静态变量
1.用import导入外部的类、同一个包中的类不需要import
关键字顺序:package import class
跟成员方法一样,构造方法也可以重载。
声明为final的方法不能被重载。
声明为static的方法不能被重载,但是能够被再次声明。
方法重载的规则:
方法名称必须相同。
参数列表必须不同。(包括:个数不同、顺序不同、类型不同。)
方法的返回类型可以相同也可以不相同。
仅仅返回类型不同不足以称为方法的重载。
if(形参= =基本类型) 实参值复制给形参。
if(形参= = 对象) 对象的引用(地址) 给形参。
(java传object都是引用)
例如,下列的【代码2】
class Fish {
int weight = 1;
}
class Lake {
Fish fish;
void setFish(Fish s){
fish = s;
}
void foodFish(int m) {
fish.weight=fish.weight+m;
}
}
public class Main {
public static void main(String args[]) {
Fish redFish = new Fish();
System.out.println(redFish.weight); //【代码1】 //1
Lake lake = new Lake();
lake.setFish(redFish);
lake.foodFish(120);
System.out.println(redFish.weight); //【代码2】 //121
System.out.println(lake.fish.weight); //【代码3】 //121
}
}
子类父类在同一包中 :只要不是private,都可继承。(访问权限保持不变)
子类父类在不同包中: 只继承 protect 和public.
x instanceof A:检验x 是否是类A的对象,返回值是Boolean。
判断是否 是类A的对象的依据: 创建x的类是否 是类A 或者是否 是类A的子类
if(是) return true;
else return false;
定义:被final修饰符修饰的类和方法
1.abstract类可以有abstract方法,也可以有非abstract方法(但是非abstract类 不能有abstract方法).
2.不能被实例化,必须有子类覆盖其声明的方法
1.对于抽象方法,只允许声明,不允许实现
2.不允许使用 final和abstract同时修饰一个方法或类。
3.不允许用static修饰abstract方法,即abstract方法 必须是实例方法。
//被塑性成更一般的类
Employee emp;
emp = new Manager();//将Manager类型的对象直接赋给Employee类的引用变量,将Manager对象塑性为Employee类
//被塑性为对象所属类实现的接口类型
Car jetta = new Car();
Insurable item = jetta;
//基本数据类型
(int)871.34354; //871
(char)65;//'A'
(long)453; // 453L
//引用变量:还原为本来的类型
Employee emp;
Manager man;
emp = new Manager();//将Manager向上塑型为Employee,此时emp中如果有被重写的方法,则调用Manager类中的方法,但此时不能调用Manager类中的特有方法
man = (Manager)emp;//将Manager还原回去,此时可以调用Manager类中的特有方法
//在向上和向下的塑型过程中一直只有一个Manager被转换,不能转换为Employee的其他子类,只能向下塑型回Manager类
String(String s) :
String x = new String(s);
String(char a[])
char a[] ={'b','c'};
Srtring s= new String(a);
String(char a[],int startIndex,int count):
char a[] ={'0','1'.'2','3','4'};
String s = new String(a,1,3); //"123"
public int length()
String a =" hello";
int n1,n2;
n1=a.length(); // 5;
n2="全场carry".length(); // 7
public boolean equals(String s)
String s="xxx",r="yyy";
boolean f = s.equals(r); // return false
public boolean startsWith(String s) , public boolean endWith(String s)
String s ="B站关注帅小柏";
boolean n1,n2;
n1= s.startsWith("B站"); // true
n2 = s.endWith("小柏"); // true
public int compareTo(Srting s)
** 处理查询结果集**(只有当第四步使用的是select语句的时候,才会有第五步处理查询结果集)
import java.sql.*;
public class Main {
public static void main(String[] args) {
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=每日一题";
String userName = "sa";
String userPwd = "atsj*******"; // 保密
Connection conn = null;
Statement sta = null;
try {
// 1.注册驱动
Class.forName(driverName);
// 2.获取连接
conn = DriverManager.getConnection(dbURL, userName, userPwd);
// 3.创建statement对象
sta = conn.createStatement();
// 4。发送SQl
String sql ="delete from stu where sname = '傻桃'";
sta.executeUpdate(sql);
System.out.println("连接数据库成功");
} catch (Exception e) {
e.printStackTrace();
System.out.print("连接失败");
} finally {
if (sta != null) {
try {
sta.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
package Mythread;
public class Main extends Thread{
public static void main(String []args){
Main m = new Main();
m.start();
for (int i = 0; i < 100; i++) {
System.out.println("maining------"+i);
}
}
@Override
public void run() {
for (int i = 0; i < 100; i++) {
System.out.println("runing"+i);
}
}
}
package Mythread;
public class Main implements Runnable{
public static void main(String []args){
Main m = new Main();
new Thread(m).start();
for (int i = 0; i < 100; i++) {
System.out.println("maining------"+i);
}
}
@Override
public void run() {
for (int i = 0; i < 100; i++) {
System.out.println("runing"+i);
}
}
}