黑马程序员技术交流社区

标题: 今天学了这么多好东西,给大家分享分享 [打印本页]

作者: kkkkkccccc    时间: 2015-7-11 23:36
标题: 今天学了这么多好东西,给大家分享分享
函数(方法)
                修饰符 返回值类型 方法名(参数列表)
                {
                        // 方法体
                        // return语句
                }
        数组
                存储多个同一种类型数据的元素的容器
               
               
                int[] arr = new int[2];
               
                int[][] arr2 = new int[2][]; // null
               
                // 普通查找
                1) 明确返回值类型 int
                2) 明确参数列表 int[] arr, int key
                public static int getKeyIndex(int[] arr, int key)
                {
                        // 遍历
                        for (int i = 0; i < arr.length; i++)
                        {
                                if (key == arr[i])
                                {
                                        return i;
                                }
                        }
                        return -1;
                }
               
2. java中的参数传递问题

        基本数据类型: 形式参数的改变不会影响实际参数.
        引用数据类型: 形式参数的改变会直接影响实际参数.
                关键就是看传递的是实际值还是地址值.
                注意: 字符串特殊.

3. 面向对象思想概述
        面向过程: 以函数为基础,强调的是过程,关注的是功能行为.
        面向对象: 以对象为基础,强调的是对象,关注的是具备某些功能的对象.
        关系:        面向对象是基于面向过程的.

4. 面向对象的思想特点:
        1) 更符合人们的思考习惯.
        2) 将复杂的事情简单化.
        3) 将程序员从执行者变成指挥者.
                面试小技巧: 有些东西结合现场环境随机应变.
               
        一个合格的程序与是不会写出诸如"摧毁地球"这样的功能的, 他们会写一个方法叫摧毁行星,而把地球作为参数传递进去.
       
5. 符合面向对象思想的分析方式
        1) 分析系统中有哪些对象 -- 名词提取法
        2) 明确这些对象具备什么功能
        3) 明确对象之间的关系.
        作业: 今天学完之后,把刘老师大象的案例,换成能运行的代码.

6. 类与对象
        类: java语言中最基本的单位就是类. 是属性和行为的集合.一个抽象的概念.
        对象: 是类的具体的存在.
       
        java中描述事物通过类的形式体现,类是具体事物的抽象,概念上的定义。比方说人,整个概念
        对象就是事物的具体实实在在的个体,比方说魏忠贤.
       
7. 类的组成
        成员变量 : 定义在类里面, 方法外面的变量.
        成员方法 : 我们之前定义的函数干掉一个static就是成员函数(成员方法)
       
        举例: 学生类
        class Student
        {
                String name = "张三"; // 最初它初始化的时候是null,然后被"张三"替代. 并不是一初始化就是"张三".
                int age;
                char sex;
               
                public void study()
                {
                        System.out.println("学生学习");
                }
               
                public void sleep()
                {
                        System.out.println("学生睡觉");
                }
               
                public void eat()
                {
                        System.out.println("学生吃饭");
                }
        }
       
        使用学生类:
                1) 如果多个类写在同一个源文件中. 文件名必须和带main方法的那个class一样.
                2) 创建对象
                        类名 变量名 = new 类名();
                3)
                        使用成员变量: 对象名.成员变量名
                        使用成员方法: 对象名.成员方法名()
                       
                        注意事项:
                                new 出来的实例都是在堆内存,
                                堆里面的变量都有默认的初始化值.
               
                        练习:
                                手机类:
                                属性:品牌(brand)、价格(price)、颜色(color)
                                行为:打电话(call)、发短信(sendMessage)、玩游戏(playGame)

                                汽车类:
                                属性:品牌、价格、颜色
                                行为:跑、停

        什么时候定义成员变量:
                描述事物的属性,就应该定义为成员变量.
               
                事物的属性是事物的一部分,这个属性对应的变量才能被定义为成员变量。
                在java中,成员变量其实就是这个类的属性。
                其他情况,都应该将变量定义成局部变量。
                当然,你如果不按照这个标准做也没有太大问题,只是不符合面向对象的思想特点。

       
8 .成员变量和局部变量区别
        1) 定义位置区别:
                成员 : 类中,方法外面
                局部 : 方法中或者方法声明上的形参
        2) 初始化值的区别:
                成员变量: 有默认初始化值.
                局部变量: 没有默认初始化值,想使用,必须先定义,再赋值,再使用.
               
                所有的变量使用前都必须进行初始化.
        3) 存储位置的区别:
                成员 : 存储在堆里面.随着对象的创建而存在,随着对象的消失而消失.
                局部 : 存储在栈内存.随着方法的调用而存在,随着方法的调用完毕而消失.
               
        在使用变量的过程中, 查找变量的顺序是:
                局部 -- 成员 -- 父类 -- 报错
                使用过程中,遵循一个原则:就近原则。
       
9. 匿名对象
        没有名字的对象.
       
        应用场景:
                a: 当对象的方法仅进行一次调用的时候.
                b: 匿名对象可以作为实际参数传递.
               
        // void
        // String s
        public void print(String s)
        {
                sop(s);
        }
       
        String s = "abc";
        print(s);
       
       
        // 接收一个学生类型数据的方法
        public void print(Student s)
        {
                s.study();
        }
       
        Student s = new Student();
        print(s); // 调用方法
        print(new Student());
       
10 . 重点
        定义类,并使用类中的成员掌握
        关于类的内存图,理解 -- 不理解建议大家仿照刘老师的图自己画画
        局部变量和成员变量 掌握
        匿名对象理解.
       
       
作者: CLTDEZHUCE    时间: 2015-7-11 23:48
总结的好多,想你学习
作者: 18295718171    时间: 2015-7-11 23:49
笔记做的不错!
作者: 时光无痕    时间: 2015-7-11 23:51
笔记真的不错,继续加油
作者: 李金伦    时间: 2015-7-11 23:54
很详细的笔记,不错
作者: 扶摇丶    时间: 2015-7-11 23:55
很好的笔记,比我的详细多了,向你学习
作者: 360638403    时间: 2015-7-12 00:22
详细多了
作者: 黑马和大灰狼    时间: 2015-7-12 01:02
好详细的笔记
作者: 云雀    时间: 2015-7-12 01:45
不错。努力吧骚年
作者: 我为宇宙    时间: 2015-7-12 08:01
18295718171 发表于 2015-7-11 23:49
笔记做的不错!

值得借鉴一下!!!
作者: 小蜗牛0519    时间: 2015-7-12 08:02
不错 写得很详细
作者: 430422    时间: 2015-7-12 08:28
向你学习!
作者: 杜弦东.    时间: 2015-7-12 08:55
老师也发过一份
作者: fantianfei    时间: 2015-7-12 09:22
谢谢分享。。
作者: Miss.H    时间: 2015-7-26 16:25
11号的东西  怪不得这么弱智0.0
作者: Miss.H    时间: 2015-7-27 21:17
差不多了,看完敲代码
作者: lizequn007wo    时间: 2015-7-27 21:58
分享了,学习了谢谢!
作者: 黑进制    时间: 2015-7-27 22:05
总结的很好




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