




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.目录一、java简介1二、基本语法1三、流程控制2四、数组3五、类和对象4六、构造方法5七、封装5八、继承6九、访问修饰符6十、多态7十一、抽象类7十二、接口7一、常用类8一、java简介定义:java是一门面向对象的高级编程语言特点:简单性 健壮性 安全性 面向对象(封装、继承、多态) 可移植性(跨平台) 分布性 解释执行 高效性 多线程三大技术领域:javaME(微缩版) javaSE(标准版) javaEE(企业版)专业术语:OO/OOP 面向对象 JDK:java开发工具包(开发环境) JRE:java运行环境 JVM:java虚拟机java运行机制:*.java-通过java编译器
2、-*.class(字节码)-JVM解释执行-不同操作系统科识别的机器语言二、 基本语法 标识符:对类方法以及变量的命名-标示符 规则:由字母、数字、下划线以及$符号构成 首字母不能是数字严格区分大小写 不能使系统关键字类名首字母大写 包名全部小写 方法名称首字母小写 基本数据类型:数值型:整型 byte(-128-+127) short int long(最后可以加一个L)浮点型 float(单精度浮点型) double(双精度浮点型) 注意;float赋值为小数时要加f字符型 char 布尔型 boolean true/false(真/假)引用类型(复合类型):String 数组 类 接口
3、Object基本数据类型之间的转换:byte short char -int ?long-float-double从左到右-自动转换从右到左-强制转换自动类型转换:两种数据类型相互兼容,目标类型大于原类型即从小的数据类型转换到大的数据类型强制类型转换:从大的数据类型转换成小的数据类型小类型 变量名=(小类型) 表达式byte a1 = (byte)a; short b1 = (short)b ; int c1 = c;double d1 = d;/long小于double 所以是自动转换 byte e1 = (byte)e;-类的基本语法:修饰符 class 类名 /主方法 public st
4、atic void main(String args)System.out.print(“参数”);不自动换行,且必须要有参数 System.out.println(“参数”);自动换行 n换行 t退格(tab制表位) +:做运算操作 做拼接操作 定义变量:数据类型 变量名称 = 变量的值 String name = “张三”; name+100=张三100 100+name+200=100张三200 100+200+name = 300张三name +(100+200)= 张三300name +100+200= 张三100200三、流程控制if-else switch-case(byte s
5、hort int char) 选择语句for while do-while循环for(int i=0;i<XX;i+) 循环体while(条件) while(true) while(1=1) 循环体 /先判断再执行do 循环体while(条件); 至少执行1次循环 总复习 包:第一章(基本语法)常量:final 数据类型 常量名称=值四、数组数组:存储相同数据类型的一组数据的集合数组长度是不可变得/创建数组并给出数组的长度数据类型 数组名称 = new 数据类型长度数据类型 数组名称 = new 数据类型长度int a = new int20;/边定义边赋值数据类型 数组名称 = new
6、 数据类型值数据类型 数组名称 = new 数据类型值.int arr = new int1,2,3,4,5String names = new String“111”,”111”,”111”,”111”,”111”;char cs = new char1,1,1,1;数组必须遍历输出:length 获取数组的长度对数组进行排序的方法:Arrays.sort(数组名称)从小到大排序用Arrays要注意导入包:import java.util.Arrays/直接赋值数据类型【】 名称 = 值.;二维数组:数据类型 数组名称 = new 数据类型行列 列可省 行不可省int arr = new i
7、nt1,2,3,4,5,6输入类:Scanner使用步骤:1、在class的头上导入包;import java.util.Scanner;2、创建Scanner的对象 Scanner 对象名 = new Scanner(System.in);3、获取键盘录入的值 获取整数 int 名称 = 对象名 .nextInt(); 获取字符串:String 名称 = 对象名.next()五、类和对象 属性:对象具有的基本特征方法:对象执行的操作类:抽象的 具有相同属性和方法的一组对象的集合对象:用来描述客观事物的一个实体,由一组属性和方法构成类的关键字:class修饰符 class 类名 /编写属性/编
8、写方法 编写一个学生类:/功能类public class Student /学生的属性 String name; int age; String sex; /方法:无参数无返回值的方法 public void show() System.out.println(“姓名:”+name+”;年龄:”+age+”性别:”+sex) /业务逻辑类public class StudentMianpublic static void main(String args) /创建功能类的对象Student demo = new Student();=”张三”;demo.age = 20;de
9、mo.sex=”男”;demo.show();六、构造方法 作用:给属性赋值 实例化对象(创建类的对象) 在创建类的对象时被调用 特点:与类名相同不能有返回值类型(void也不行) 可以有0-n个参数当我们没有显示的声明构造方法时 系统会自动生成一个隐式的无参构造在一个类中 不能有多个完全相同的构造方法/无参数的构造方法public Student() /写代码(代码可有可无)/给学生类编写一个带三个参数的构造方法public Student(String name,String sex, int age) /将传进来的参数赋值给属性(成员变量) =name;this.sex
10、=sex;this.age=age/编写一个带两个参数的构造方法public Student(String name, String sex)=name;this.sex=sex;七、封装 概念:尽可能多的隐藏类的内部结构特殊的访问器:getter(获取属性值的特殊方法)和setter(设置属性值的特殊方法)如何将属性私有化:private修饰属性 属性私有化 (属性私有化之后不能被其他类访问)所以 需要在类中对私有属性进行封装/定义一个私有的属性private String name;/getter方法public String getName() return this.
11、name/setter方法public void setName(String name) =name;/将参数传递给属性八、继承概念:子类继承父类非私有的属性和方法public class A public class B extends Ajava属性单继承、多层继承 不能多父继承一个类只能有一个父类 一个父类可以有多个子类当没有显示的指定父类时 统一继承Object对象子类可以重写父类中非私有的普通方法(子类不能重写父类的构造方法)方法名称和参数以及返回值完全相同 不能有比父类更严格的访问权限 (可以有更大的访问权限,例如父类中是default或者protected 子
12、类可以是public 但是父类中是private子类便不能重写)当父类被final修饰之后该类不能被子类继承 这种类叫做终态类 或者 最终类final修饰方法 方法不能被子类重写final修饰属性 属性变成常量 其值不能给修改子类在创建对象时 默认先调用父类的无参数构造方法当父类中没有无参数构造方法 子类不能直接继承 需要在子类的构造方法中用super关键字调用父类的有参数构造方法 且这句话只能放在子类构造方法的第一行九、访问修饰符 修饰符本类同包不同包子类全局publicprotecteddefaultprivate访问控制符:final:修饰属性 方法 类static:静态的 修成的成员变
13、成全局的,在程序启东分配内存空间 程序结束时释放通过类名直接调用 无需实例化对象 static修饰方法 静态方法不能调用非static成员十、多态多态的两种表现形式:重写:在继承关系中 子类重写父类非私有的同名方法(方法名称 参数 以及返回值必须相同,不能有比父类更严格的访问权限 但是可以有比父类更高的权限)重载:在同一个类中 具有多个相同方法名称但型构不同的方法型构不同具体体现在以下方面:、参数个数不同、参数类型不同、参数顺序不同(前提是参数的类型不同)、重载与返回值类型无关十一、抽象类关键字:abstractpublic abstract class 类名 成员 抽象类中可以有下列成员、普
14、通方法、抽象方法、属性、构造方法(用于给属性赋值,供子类调用,并非用于实例化对象的)抽象方法的结构:public abstract 返回值类型 方法名称(参数);abstract public 返回值类型 方法名称(参数);抽象方法特点:只有方法声明 没有方法实现抽象类不能被实例化抽象类通过被子类继承实现一个普通的类继承自抽象类 强制重写抽象类中所有的抽象方法创建子类的对象十二、接口 接口:抽象方法和常量的结合(接口中只能存在抽象方法和常量) 常量:默认具有 public static final的的特性 方法:默认具有public abstract的特性 接口不能存在私有成员 所有成员包括接
15、口本身 必须是public 公共类型的 关键字:interface 实现接口关键字是:implements语法:public interface 接口名称 /编写常量(常量必须赋值) int NUM = 100; /编写抽象方法 void f();接口不能被实例化(抽象到极致的类,是抽象类的另一种特殊的表现形式)通过子类继承来实现public class 类名 implements 接口一个类可以同时实现一个或者多个接口一个接口可以继承一个或者多个已经存在的接口一个子类还可以同时继承一个父类并且实现一个或者多个接口 一、常用类Mathabs()绝对值Math.abs(sdd)结果为XXX ce
16、il()向上取整 floor()向下取整 round()四舍五入 random()随机数 0-1之间的随机小数 sqrt()开平法 power(a,b)求a的b次方 max(a,b)最大值 min()最小值Sting concat() 连接 类似于+号 charAt()返回指定位置的char值(字符) indexOf()返回第一次查找到的索引位置(从0开始)没有找到返回-1 lastIndexOf()从后往前查找(查找最后一次出现的位置)没有找到返回-1replace(old,new)用new替换所有的oldsubstring(a,b)字符串截取包括a索引不包括b所有 只有一个参数截取到最后
17、索引不能是负数 截取的最大索引不能超过字符串的长度 length()获取字符串的长度trim()去除字符串两端的空格toLowerCase()转换成小写toUpperCase()转换成大写split() 字符串分割 返回字符串数组equals() 字符串比较返回true or falseStringBuffer:字符串的封装类使用StringBuffer必须创建它的对象StringBuffer 对象名 = new StringBuffer();对象名.append(参数) 添加值对象名.toString()将stringBuffer对象转换成字符串String和StringBuffer的区别长度:String的长度不可变 StringBuffer长度可变 Stri
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年海绵盒项目可行性研究报告
- 2025年汽车液晶显示器项目可行性研究报告
- 2025年正六边形砖项目可行性研究报告
- 2025年智能压力哨项目可行性研究报告
- 2025年插销系锁项目可行性研究报告
- 2025-2030中国快步鞋行业发展趋势及发展前景研究报告
- 2025-2030中国弹簧阻尼器行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国异丁酸行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国建筑器材租赁行业市场发展现状及竞争格局与投资战略研究报告
- 2025-2030中国度假酒店行业市场发展前瞻及投资战略研究报告
- 2025年度画家经纪业务合作协议书模板
- DB37-T 5310-2025《城镇排水管渠养护维修服务规范》
- 微笑面对挫折(课件)六年级心理健康(苏科版)
- 2025届小米全球校园招聘启动(即将笔试)笔试参考题库附带答案详解
- 胆管癌手术护理
- 2025 年小学劳动技术新课程标准(2022 版)标准试题
- 第10课传承与创新中国近现代美术课件-高中美术人教版美术鉴赏
- 2025年安全员C证考试题库及答案-
- 清华大学第二弹:DeepSeek赋能职场-从提示语技巧到多场景应用
- 浙江台州市文化和广电旅游体育局招聘编外人员历年高频重点提升(共500题)附带答案详解
- 2025年高考物理复习之小题狂练600题(实验题):探究小车速度随时间变化的规律(10题)
评论
0/150
提交评论