什么是软件: 按照特定顺序组织的计算机数据与指令的集合 什么是软件开发: 就是借助开发工具与计算机语言制作软件; 计算机语言发展史: 机器语言——汇编语言——高级语言; 人机交互的两种方式: 1 命令行方式 2 图形化界面 Java语言最重要的两个特点: 1 开源; 2 跨平台; JVM(java虚拟机),JRE(运行环境), JDK(JAVA开发工具包)三者之间的关系: JRE:JVM + 类库; JDK:JRE + java开发的工具, 标示符组成规则: 1 英文大小写字母 2 数学字符 3 $和_ 注:不能以数学字符开头; 什么是包: 包其实就是文件夹,用来解决相同类名问题 包名书写方式要求全部小写,一般是公司的域名 倒着写; 变量与常量: 变量:就是在程序执行的过程中,其值在某个范围内 能够发生变化的量; 常量:就是在程序执行的过程中其值不再发生改变的量; 为什么要有数据类型: 是为了在程序执行过程中合理分配内存空间; 数据类型分为两种: 1 基本数据类型: 整数类型: a.byte型(占一个字节)(范围:-128——127); b.short型(占两个字节)(范围:-2的15次方——2的15次方减1); c.int型(占四个字节)(范围:-2的31次方——2的31次方减1); d.long型(占八个字节)(范围:-2的63次方——2的63次方减1); 浮点类型: a.float型(占四个字节); b.double型(占八个字节); 字符类型 a. boolean型(理论上占八分之一字节,实际未明确指定); b. char型(占两个字节)(范围:0-65535); 2 引用数据类型 a. 数组; b. 类; c. 接口; d. 枚举; 什么是运算符: 就是对常量与变量进行操作的符号; 运算符的分类: 1 算术运算符; 2 逻辑运算符; 3 关系(包含比较运算符,条件运算符)运算符; 4 位运算符; 5 赋值运算符; 6 三目(元)运算符; 注:算术运算符中++,--的前置与后置的区别 1 前置时,先自增,后赋值; 2 后置时,先赋值,后自增; 逻辑运算符中&&(双与)和||(双或)的作用: 具有短路效果,使程序执行更加高效; &&左边为false,右边就不再进行判断,直接输出false结果; ||左边为true,右边就不再进行判断,直接输出true结果; 流程控制语句的分类: 1 顺序结构; 2 选择结构;(if; if...else; if...else if...N else if...else ;switch:case:default选择语句) 3 循环结构; (for循环; while循环; do...while循环) for循环与while循环的区别: for语句循环的格式: for(初始化表达式;判断表达式;控制循环表达式){ 循环体 } while语句循环的格式: int i = 0;(初始化表达式) while(判断表达式){ 循环体; 控制循环表达式; } 区别:for语句循环结束后变量i就不能在继续使用了; 而while语句循环结束后变量i仍然可以使用; 最后还有do...while语句,格式如下: int i = 0;(初始化表达式) do{ 循环体; 控制循环表达式; }while(判断表达式); break continue return控制循环语句的区别: break: 终止循环,结束循环; continue: 终止本次循环,继续下一次循环; retunr: 结束方法; 方法的作用: 提高代码的复用性; 什么是方法? 指完成特定功能的代码块; 方法的歌格式: 修饰符 返回值 方法名( 参数列表 ){ 方法体语句体; return返回值; } 方法的重载:两个或两个以上的方法,方法名相同, 参数列表不同,与返回值无关的一种情况; 其中,参数列表不同主要有三种情况: 1 参数个数不同; 2 参数数据类型不同; 3 参数数据类型顺序不同; 数组:存储同一数据类型的多个元素的集合; 作用:为了存储同种数据类型的多个值; 数组的定义格式; 动态初始化格式(指定长度,由系统给出初始化值): 数据类型[] 数组名 = new 数据类型[数组长度(整数类型)]; 静态初始化格式(给出初始化值,由系统指定长度): 1 数据类型[] 数组名 = new 数据类型[]{1,2,3,4,5}; 2 数据类型[] 数组名 = {1,2,3,4,5}; 内存的分域主要分为: 1 栈:存储局部变量; 2 堆:存储new创建出来的数组或对象; 3 方法区;调用方法时类的寄存区; 4 本地方法取2区:和系统相关; 5 寄存器:给CPU使用; 同类情况下方法的四种类型: 1 无参 无返回值 public void first(){ System.out.println("我爱java"); } 调用方法格式: 方法名(); 2 无参 有返回值 public double second(){ System.out.println("我爱java"); return 11.0; } 调用方法格式; 返回值数据类型 变量名 = 方法名(); 3 有参 无返回值 public void third(int a){ System.out.println("我爱java"); } 调用方法格式: 方法名(变量名(变量值)); 4 有参 有返回值 public int fourth(int a){ System.out.println("我爱java"); } 调用方法格式: 返回值数据类型 变量名 = 方法名(变量名(变量值)); 方法的调用: 1 同类情况下调用方法的格式: a. 方法名(变量名);(注:此处为无返回值时的调用格式;形参与实参数据类型要相同) (变量已被赋值,单纯的调用方法) b. 数据类型 变量名 = 方法名(赋值);(此处为有返回值是的调用格式) (变量未被赋值,调用方法的同时进行赋值) 2 不同类情况下调用方法给变量赋值的格式: 类名 变量名 = new 类名(); a. 变量名.方法名(); (调用成员方法进行赋值格式) b. 变量名.成员变量名 = 赋值;(调用成员属性进行赋值格式) 面向对象开发: 就是不断的创建对象,使用对象,指挥对象做事情; 面向对象设计: 其实就是在管理和维护对象之间的关系; 面向对象的特征: 封装;继承;多态; 类:是一组相关属性和行为的集合; 对象:是该类的具体事物的体现; 事物:是现实生活中的抽象概念; 成员变量与局部变量的区别: 1 初始化值不同:成员变量具有初始化默认值,而局部变量变量没有; 2 在类中的位置不同:成员变量在类中方法外,而局部变量在方法声明上或方法定义中; 3 进入内存的位置不同:成员变量进入堆,局部变量进入栈; 4 生命周期不同:成员变量随对象的创建而出现,消失而消失 局部变量在它定义的位置起,到离他最近的方法体结束为止; 匿名对象的调用格式: new 类名().方法名();(适合一次性调用,简洁,多次调用极为占用内存空间) 有名对象调用格式: 类名 变量名 = new 类名();(适合多次调用,占用空间极少) 变量名.方法名(); 封装是指隐藏对象的属性和实现细节,仅对外提供公共访问方式; 封装是通过权限修饰符public private protect friendly四个修饰词来实现的; 当权限受到限制时可以通过set get方法来获取相应的数据; this关键字用来区分成员变量和局部变量重名; 构造方法的作用:给对象的属性进行初始化; set get 方法主要用来修改对象的属性值;
|