黑马程序员技术交流社区

标题: java基础知识学习总结 [打印本页]

作者: LTaoo    时间: 2017-12-27 17:00
标题: java基础知识学习总结
什么是软件:
                        按照特定顺序组织的计算机数据与指令的集合
                什么是软件开发:
                        就是借助开发工具与计算机语言制作软件;
                计算机语言发展史:
                        机器语言——汇编语言——高级语言;
                人机交互的两种方式:
                        1 命令行方式
                        2 图形化界面
                Java语言最重要的两个特点:
                        1 开源;
                        2 跨平台;
                JVM(java虚拟机)JRE(运行环境),
                JDKJAVA开发工具包)三者之间的关系:
                        JRE:JVM + 类库;
                        JDK:JRE + java开发的工具,
                标示符组成规则:
                        1 英文大小写字母
                        2 数学字符
                        3 $_
                注:不能以数学字符开头;
                什么是包:
                        包其实就是文件夹,用来解决相同类名问题
                        包名书写方式要求全部小写,一般是公司的域名
                        倒着写;
                变量与常量:
                        变量:就是在程序执行的过程中,其值在某个范围内
                                   能够发生变化的量;
                    常量:就是在程序执行的过程中其值不再发生改变的量;
                为什么要有数据类型:
                        是为了在程序执行过程中合理分配内存空间;
                数据类型分为两种:
                        1 基本数据类型:
                                整数类型:
                                a.byte型(占一个字节)(范围:-128——127);
                                b.short型(占两个字节)(范围:-215次方——215次方减1);
                                c.int型(占四个字节)(范围:-231次方——231次方减1);
                                d.long型(占八个字节)(范围:-263次方——263次方减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 switchcase: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 方法主要用来修改对象的属性值;


作者: 小浙姐姐    时间: 2017-12-30 17:11
写的部分还是很用心的,总结的话尽量用自己的语言去写,会更有助于理解和学习呢!就业班加油!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2