第三周 学习总结

一、视频学习笔记

1、计算机语言发展基本概况

面向机器(汇编)、面向过程(C语言)、面向对象(Java语言);

2、类
  • Java程序的基本要素;
  • 是Java语言最重要的“数据类型”,封装着数据和对数据的操作;
  • 类声明的变量被称作对象变量(即对象);
  • 定义类包括类声明和类体;
  • 类体包括变量声明和方法(即C语言的函数);

关于这一点有必要多说两句,请看下面的代码:

class A {
    int x;
    x = 100;             //语句
    void f() {           //方法
        if (x>10) {
            x=100000;    //语句
        }
    }
}

在上面的代码里面,存在错误的语句使用:x = 100;

注意,类体中只能包含变量声明和方法,没有任何其他的语句,执行类似x = 100;的语句必须要在方法里面;

编译上述代码,结果截图如下:

似乎编译器不认识这个鬼东西是啥,出现了错误提示:“需要标识符”


  • 成员变量:变量声明部分声明的变量(有默认值);其有效范围是整个类,与书写位置无关
  • 方法体内声明的是局部变量(没有默认值),只在方法类有效,与书写位置有关
  • 若局部变量和成员变量同名,则成员变量在方法内暂时失效;若想要使用成员变量,可以使用this语句;例:
class Lader {
    float height = 10.0f;
    float area;
    float computerArea(){
        float height = 5.0f;
        area = height + this.height;    //area = 5.0f + 10.0f
        return area;
    }
}
  • 类的单一性:写程序时尽量让一个类解决一种问题;
  • 关于成员变量的默认值
变量 默认值
逻辑类型
数值类型 0.0
字符类型 空字符
3、构造方法与对象的创建
1、构造方法

构造方法是一个方法,是名词,不是动词意义上的构造方法

  • 创建对象时使用;
  • 构造方法是没有类型的(与类名一样);
  • 默认的构造方法:当编写时没有定义构造方法,编译时java会提供一个与类名一致的默认构造方法(上述过程可以通过反编译javap来验证)
  • 自定义的构造方法:在编写时定义了构造方法,编译时系统就不会提供默认的构造方法【注:自己定义的构造方法可以有多个,但是必须保证各个构造方法的参数类型不相同或者参数个数不相同】
2、创建对象
  • 类是一种重要的数据类型,其声明的变量叫对象变量,简称对象;
class XiyoujiRenwu {
    float height;
    float weight;
    String ear,head;
    void speak (String s){
        head = "歪着头";
        System.out.println(s);
    }
}
public static void main(String args[]) {
    XiyoujiRenwu zhubajie,sunwukong;
    //声明变量,就像是起名字
    zhubajie = new XiyoujiRenwu();
    /*
    new运算符:
    - 只能和构造变量运算
    - 计算的结果是一个数
    - 给zhubajie分配变量(创建对象)
    */
    sunwukong = new XiyoujiRenwu();
    zhubajie.height = 1.80f;
    zhubajie.head = "大头";
    zhubajie.head = "一双大耳朵";
    sunwukong.height = 1.62f;
    sunwukong.height = 1000f;
    sunwukong.head = "长发飘飘";
    System.out.println("zhubajie的身高:"+zhubajie.height);
    System.out.println("zhubajie的头:"+zhubajie.head);
}
3、使用对象
  • 对象.变量:调用变量;
  • 对象.方法:调用方法;
  • 如果使用了空对象去访问对象或者变量,编译会通过,但是运行会出错(错误提示:NullPointerException)
4、对象的引用和实体
  • 对象本身存着一个引用,可以操作分配给自己的变量,调用类提供的方法;
  • 实体是指分配给对象的变量;
  • 对象包括实体和引用;
  • 如果两个对象有类型相同的变量和相同的引用,那么二者具有完全相同的实体;

例:

class Point {
    int x;
    int y;
}
public class test {
    public static void main(String args[]) {
        Point p1,p2;
        p1 = new Point();
        p2 = new Point();
        p1 = p2;   //p1,p2具有相同的引用
        p1.x = 1;
        p2.x = 10;
        p1.y = 100;
        p2.y = 1000;
        System.out.println(p1.x+" "+p2.x);
        System.out.println(p1.y+" "+p2.y);
        //此时输出的x,y相同,因为p1,p2的实体相同
    }
}

输出的结果:

关系如图:


4、类与程序的基本结构
  • 一个Java应用程序(也称作一个工程)由若干个类构成;
  • 若是一个应用程序,至少要一个主类;

二、 输入调试教材第二三章的代码

我的码云链接

三、脚本运行结果的截图


遇到的问题:

注:以下问题统统是一个萌新小白写给自己看的日志,对大家可能没有参考价值

1、虚拟机出现“Welcome to emergency mode ......”

原因分析:设置共享文件夹时,/etc/fstab文件没有设置好,根据百度的结果,挂载什么balabala东西出现了问题。

处理方法:在root模式下键入“vi /etc/fstab”,把新加的一行删了......

(菜的抠脚)后续有时间再来继续处理这个设置共享文件夹问题。

2、修改Ubuntu密码

主要适用于像我这样的嫌自己以前的密码太长的人

输入命令:

passwd dong //dong是我的用户名

输入的密码太过简单可能出现提示:

Bad:new passwd is too simple

这时候加上sudo命令即可:

sudo passwd dong //dong是我的用户名

再输一遍新密码就行;

根据学姐给的建议,可以参考博客 ubuntu下启用root登录使用命令sudo passwd root 解决;

3、在Git Bash中如何解决error: failed to push some refs to 'xxx(远程库)'错误提示

我遇到的错误信息截图如图所示:

参考链接可完美解决:https://jingyan.baidu.com/article/f3e34a12a25bc8f5ea65354a.html

或者 http://blog.csdn.net/zshlclzsh/article/details/50440411

posted @ 2018-03-17 22:21  Maxeys  阅读(263)  评论(2编辑  收藏  举报