当前位置:文档之家› java语言特点

java语言特点

java语言特点:1、简单2、面向对象3、分布性4、可移植行5、解释性语言6、安全性7、健壮性8、多线程9、高性能10、动态package demo; 包包名public class Test 公共的类类名public static void main(String[] args)公共的静态的无返回值方法名参数类型参数名称System.out.print(“1”);输出语句System.out.println(“2”);输出语句换行import java.util.Scanner;Scanner sc=new Scanner(System.in);创建输入对象int i=sc.nextInt();获得输入的值nextDouble(),next(),nextByte()...hasNextInt();判断输入的是否是int类型数字,是返回true 不是返回false// 小类型数据转到大类型,自动类型转换// 大类型转小类型,强制类型转换八大基本数据类型byte short int long float double char boolean所占字节 1 2 4 8 4 8 2 1 (在内存的存储空间)二进制位数8 16 32 64 32 64 16 8默认值:分支语句if(条件1){执行代码1}else if(条件2){执行代码2}else{条件1和条件2都不满足就执行此处代码}String a="y""y".equals(a); 两个String类型值对比final 最终的常量职能赋值一次,之后不可更改static final int PA = 300;// 全局常量final double PI=3.14;//局部常量量不需要static static int a = 10;// 全局变量全局变量(成员变量)整个类中有效局部变量方法体内有效// 怎么创建类:1、创建类名2、创建属性3、创建方法•// 定义属性:类型属性名称// 自定义方法:public void add(int a,int b){}// 设置属性:School s=new School(); ="南大"// 调用方法: ();// static修饰的方法可以直接用类名.方法名()调用// 无返回值的方法用void修饰,不需要return// 有返回值的方法需要用returnint[] a = new int[5];// 声明数组,并给定数组长度int[] b = new int[] { 1, 2, 3 };// 声明数组并给数组赋值int[] c = { 1, 2, 3 };// 直接给数组赋值int[] arr = { 2, 5, 77, 99, 30, 58, 23 };// 只要输出数组中的最大值int max = arr[0];// 打擂台算法for (int i = 1; i < arr.length; i++) {if (max < arr[i]) {max = arr[i];}}import java.util.Arrays;Arrays.sort(int[] a);// 数组排序方法,升序// 值传递,一个变量的值改变,不会影响其他变量的值String name = "zhangsan";String name2 = name;// 引用传递,改变值,所有引用这个地址的变量都会改变int[] arr1 = new int[] { 1, 2 };int[] arr2 = arr1;arr1[0] = 11;C/S结构:Client/Server(客户端/服务器)B/S结构:Browser/Server(浏览器/服务器)String 类substring(1);//截取字符串从1到最后包括1substring(1,5);//截取字符串从1到5的位置包括1,不包括5length();//获取字符串的长度//asdfaasdfasdf 计算a 字符中出现的次数//sdf "" sdf sdfindexOf("a");获取a在字符串中第一次出现的位置,如果没有返回-1 lastIndexOf("a");获取最后出现的位置,split("a");按照指定字符分割字符串,返回一个数组trim();//去掉首尾空格toLowerCase();//全部转化为小写toUpperCase();//全部转化为大写charAt(2)通过字符串的下表,查找字符//97 98"a".compareTo("b")//比较两个字符串在unicode表中的顺序前面的减去后面的compareToIgnoreCase(String str) 忽略大小写equals(String str)equalsIgnoreCase(String str)endsWith(String str) 判断字符串是否以str结尾返回booleanstartWith(String str)replace(Char oldChar,Char newChar);//把老的字符替换成新的---权限修饰符private,私有的访问权限,也是最严格的访问权限,仅只能在设置了该权限的类中访问,利用这个访问权限,表现出封装思想。

default,默认的访问权限,也是可以省略的访问权限,它不仅能在设置了该权限的类中访问,也可以在同一包中的类或子类中访问。

protected,受保护的访问权限,它除了具有default的访问权限外,还可以在不同包中所继承的子类访问。

public,公有的访问权限,也是最宽松的访问权限,不仅可以是同一个类或子类,还是同一个包中的类或子类,又还是不同包中的类或子类,都可以访问。

-----static:静态的修饰的变量和方法,可以直接用类名.方法调用被static修饰的成员变量和成员方法被该类及该类的所有对象共享。

final:最终的,被final修饰的变量只能被赋值一次,赋值后值不能再改变。

被final 修饰的方法不能被重写。

被final修饰的类不能被继承。

==============方法重载发生在同一个类之中,它们的方法名相同、参数列表不同,与返回值、修饰符、异常无关。

==============// 方法重写是子类重新定义父类的方法。

它们的方法名相同、参数列表相同、返回值相同。

(方法签名相同)// 无法重写final方法。

重写方法的作用域必须大于等于被重写方法的作用域,// 重写方法抛出的异常必须小于等于被重写方法抛出的异常。

----instanceof 判断对象属于什么类型java三大特征:封装:将客观事物封装成抽象的类,将自己的属性和方法隐藏起来,只对可信的类或对象提供方法访问。

继承:继承是指让某个类获得另一个类的属性和方法。

//继承用extends java是单继承如果没有继承,默认继承Object//继承:子类继承父类的非私有的属性和方法多态:多态是指事物具有不同形式的能力,表现多态的方式是重写和重载。

继承:继承后的初始化顺序父类属性-》父类构造方法-》子类属性-》子类构造方法默认子类调用父类的无参构造方法,可以super关键字调用父类的有参构造方法继承关键词:extends抽象关键词:abstract抽象类的特点:1,抽象方法在抽象类中。

也可能在接口当中2,抽象方法和抽象类都必须被abstract关键字修饰。

3,抽象类不可以用new创建对象。

因为调用抽象方法没意义。

4,抽象类中的抽象方法要被使用,必须由子类复写起所有的抽象方法后,建立子类对象调用。

如果子类只覆盖了部分抽象方法,那么该子类还是一个抽象类// 抽象方法,用abstract修饰// 定义了方法,但是没有方法体// 一个子类继承一个抽象类,需要实现抽象类中的所有抽象方法// 如果不实现,就需要把子类定义为抽象方法// 1、接口用interface修饰// 2、接口只能有抽象方法,默认用public abstract// 3、接口都不能实例化,但能定义它们的引用。

// 4、接口只能有常量,默认用public static final修饰。

// 5、接口不能继承类,也不能实现接口,但能继承多个接口=======================================================定义一个人类接口,提供方法,用于描绘吃、喝、玩、睡行为编写一个学生类实现人类接口,提供name,age,sex,phone,address,email成员变量每个变量私有化,并为每个变量提供setter,getter 方法为学生类提供无参构造器和带有所有参数的构造器编写一个教师类实现人类接口提供name,age,sex,phone成员变量,封装定义汽车类、火车类、飞机类、交通工具类,需要用继承为这些类提供三个不同的构造器,注意他们之间的继承或实现关系父类定义抽象方法:开车充能载货子类实现这三个方法// 写了有参构造方法,一定要写无参构造方法写一个汽车抽象类MotoVehicle封装两个属性:String no;// 汽车牌号String brand;// 汽车品牌写两个构造方法:一个有参,一个无参写一个抽象方法:calRent(int days) 按天数计算租车价格写一个客车类Bus继承汽车类int seatCount;// 座位数通过座位数和出租天数计算价格再写一个出租车类Car继承汽车类String type;// 汽车型号通过汽车型号和出租天数计算价格========================================================= str instanceof String判断str 是否是String 类型==================String:字符串常量StringBuffer:字符串变量StringBuilder:字符串变量StringBuilder与StringBuffer区别StringBuilder:线程非安全的StringBuffer:线程安全的============================public interface MyInterface 接口定义实现接口用implements抽象类和接口都不能实例化,但能定义它们的引用。

抽象类是对事物的抽象,表示这个对象是什么。

接口是对行为的抽象,表示这个对象能做什么。

抽象类中能有变量和常量。

接口只能有常量,默认用public static final修饰。

相关主题