Java学习笔记

1. 类:公共的属性(特征),公共的方法(动作)
2. 类和对象:
 (1)类是整体,是抽象,是概念
 (2)对象是个体,是具体,是实例
3. 类的定义
 class类名{
 公共的属性
 公共的方法
  }     
4. 对象的定义
 类 对象=new 类的构造方法()

5.构造方法:
 (1)特征:a.没有类型  b.方法名与类名完全一致
 (2)用途:读新分配的内存空间赋值
 (3)特殊情况:当类的定义中没有任何一个构造方法,系统会提供一个默认的构造方法。
              空参的构造方法:每一个属性都赋值为默认值。
    int 0
    double 0.0
    boolean false
    char '\0'
    string null
           


    变量的类型:局部变量,类的成员变量
    局部变量:方法内定义的变量,(1)方法的形参(2)方法内定义的变量
    类的成员变量:类中定义的变量
         (1)static:静态变量,类变量。
         (2)实例变量,对象变量
         

    变量和方法的调用问题
     1.在实例方法中,可以直接调用实例变量,也可以直接利用调用类变量。
     2.在类方法中,可以直接调用类变量,但是不能调用实例变量。
     3.在实例方法中,可以直接调用其他的实例方法,也可以调用类方法。
     4.在类方法中,可以直接调用其他的类方法,但是不能调用实例方法。

     对象能调用实例变量,也可以调用类变量,也可以调用实例方法,也可以调用类方法
     类能够调用类变量,也可以调用类方法,但是不能调用实例变量和实例方法

   二 、封装(实例变量私有化、getter和setter)
       实例变量私有化:
      class Student{
          private String stuID;
          private String stuName;
          private int stuAge;
          }

       1、private 私有 :仅在本类有效。
       2、默认:在本类、本包中的其他类。
          私有的好处:
            (1)保护内部的数据不被外界随意访问和修改
            (2)简化操作。
      封装后,一般要对外提供接口,方便操作。

      这个接口就是Getter和Setter。
        1、Getter:访问器的特征
           (1)一get开头。
           (2)有返回值,所以方法有类型。
           (3)方法没有参数。
        2、Setter:设置器的特征
           (1)一set开头。
           (2)方法的类型为void。
           (3)方法有参数。


    面向对象的三大特征
      1、封装
      2、继承
      3、多态

      继承:
          class 子类 extends 父类{
            //定义自己特有的属性和方法
        }
        继承的效果:子类拥有了父类的所有的方法和属性、但是结构方法除外


      构造方法:
             当继承存在时,子类的构造方法第一句一定是super()。
             它体现一种分工的思想
    三、super的三种使用场合
       1、super();表示调用父类的构造方法
       2、super。实例变量:调用父类中的实例变量
       3、super。实例方法:调用父类中的实例方法
      方法的重载
       1、方法名相同,类型相同,但是参数不同。
       2、所谓参数不同:
        (1)个数不同;
        (2)类别不同;
      方法的重写(覆盖)
       1、只有继承存在时,才有可能出现方法的重写。
      父类和子类的关系是is-a的关系
    人 对象=new Student();
    人 对象=new Worker();
    人 对象=new 之类)();
    3.方法是一子类为准;属性是以父类为准
    4.在面向对象语言中,对象之间的交互通过消息实现
     四、多态
    1.静态的多态:Person p=new Student();
    2.动态的多态:p.show()
    3.多态的目的:
        同一个动作,不同类型的对象,作出不同的反映;
        规律:
         (1)方法的重写存在时,父类声明,子类构造时
            对象.方法()//是以子类的为准
         (2)对象.变量//是以父类为准

     五、抽象类
    1.一般修饰方法和类
     (1)修饰方法时被成为抽象方法
     (2)抽象类时被称为抽象类
    2.抽象方法和抽象类的关系
     (1)抽象方法所在的类,一定是抽象类
     (2)抽象类中可以没有抽象方法
    3.抽象类不能生成对象
        一般抽象类都有子类,子类实现了父类的抽象方法后,就可以是非抽象类,就可以生成对象
     六、接口
    1.一般一个类为了扩展功能,优先实用接口
    2.接口:是规范,是标准
    3.定义:
     interface接口名(){//1.定义常量 //2.定义方法}
     注意:接口中的方法都是public,abstract
     接口的实现:
      class 类名 implements 接口名{//重写接口的方法}
     (接口的现实意义:
     国家或行业制定制度、制定标准
     公司/企业来具体实现)
    4.抽象类与接口的对比
     (1)相同点:都能扩充子类的功能
     (2.1)不同点:抽象类中可以定义实例变量,类变量,接口中只能定义静态、公共的常量。
     (2.2)抽象类中可以定义正常的实例方法,类方法,接口中只能定义public、abstract的方法
     (3)子类继承抽象类,改变子类的体系结构;
          子类实现接口,不会改变原有的体系结构。
     (4)接口更具有通用性和普遍性

      七、集合
    List list=new List();错误的

    1.List的集合唯一一个有序的集合;
    2.List集合可以添加重复的元素
    3.size();得到List集合对象的长度,元素个数;
      get(int index);得到index下标对应元素;
      add(Object o);在List集合的尾部添加一个新的元素;
      add(int inde,Object o);在I下标插入元素o
      addAll(List other);添加other中所有的元素。
      addAll(int index,List other):插入。
      contains(Object o):判断集合中是否包含元素o。
      clear();清空List集合
      八、GUI
    java.awt包和javax.swing包
     1.java.wat包:重量级组件,包括按钮,文本框,列表框,字体,颜色,布局等等这些都在awt包中而swing中没有
      窗体:Frame类
      构造方法
     Frame f=new Frame();要用import
    Button button1=new Button("登陆");
    button1.setFont(new Font("宋体",Font.PLAIN,60));
    //设置标题
    f.setTitle("我的第一个窗体");
    //设置大小
    f.setSize(400,300);
    //f.setSize(new Dimension(400,300));
    //设置窗体的位置
    f.setLocation(new Point(300,300));//等价于f.setLocation(300,300)
    //添加其它的组件
    f.add(button1);
    //设置窗体可见
    f.setVisible(true);
     2.java.swing包:轻量级组件,包括按钮,文本框
    3.窗体的布局
     窗体的默认布局是:
     BorderLayout 边框布局
     边框布局把窗体分为五个部分,分别是上北下南,左西右东,中
     North,South,East,West,Center

    流式布局
     FlowLayout
     特点:先把第一个空间放在第一行的中央,以此类推,知道第一行占满,然后第二行参照第一行排列;
     
    网格布局
    GridLyout(行数,列数)
     特点:把窗体划分为若干行,若干列,从第一行第一列开始放控件,以此类推
     Label(标签)和JLabel
     构造方法
     文字的修改:setText(String text)运行期间不能被修改
    TextField 文本框和JTextFieid
     内容的修改:setText(String text)
     内容的获取:getText

    null布局
     没有布局,但是要求每个组件都必须要设置
     setBounds(x(左上角的宽),y(左上角的长),width(长),heigth(宽))方法
     
    
    事件:event
     java中事件是通过接口来实现的。
     比如ActionListener接口中定义了一个方法actionperformed(ActionEvent e)     
     事件的监听情形有四种
     第一种:警察模式。()
     第二种:自救模式。
     第三种:保安模式。
     第四种:秘书模式。
         
    如何关闭窗口


    匿名内部类的表现形式
     new 接口名(){
        ...// 类的定义
    }

     
    对话框:JOptionPane
    showMessageDialog():消息对话框
    parentCompanent:父窗体
    showConfirmDialog():确认对话框
    message:提示内容
    title:对话框标题
    option_Type:按钮选项
    常用的option_Type主要有:
    JOptionPane.YES_OPTION JOptionPane.NO_OPTION
    JOptionPane.YES_OPTION JOptionPane.CANCEL_OPTION
    JOptionPane.YES_OPTION JOptionPane.OK_OPTION
    JOptionPane.YES_OPTION JOptionPane.OK_CANCEL_OPTION
    JOptionPane.YES_OPTION JOptionPane.YES_NO_OPTION
    
    message_type:消息类型
    JOptionpane.PLAIN_MESSAGE:平面消息
    JOptionpane.INFORMATION_MESSAGE:信息消息
    JOptionpane:WARNING MESSAGE:警告消息
    JOptionpane:QUESTION_MESSAGE:问题消息
    JOptionpaneERROR_MESSAGE:错误消息
    
    JDBC编程的详细步骤
    1.注册数据库的驱动程序
    Class.forName(“包名.类名”);
    比如:Class.forName("com.mysql.jdbc.Driver//驱动")//展开jar,第一个就是包名
    2.创建连接对象.(需要引入一个包java.sql.*)
     Connection
      conn=DruverManger.getConnection(url.user.password);
      getConnection(url,user,password)


    3.创建语句
    Statement st=conn.createStatement();
    4.执行这条语句
     (1)如果是查询语句
     ResultSet rs=st.executeQuery("select语句");然后遍历re
     (2)如果是增上盖语句
     int row=st.executeUpdate("insert/update/")
     关闭服务器
     conn.close();
     

    项目的创建步骤(一)
    1.新建一个java project,将其命名
    2.选择该工程,点击右键,新建一个Folder,命名为lib(依赖的包)jar
    3.吧myssql的jar包,赋值在lib中
    4.崩工程要营业这个jar包,选中工程,点击右键,选择properties,找到java build
 path选项,找到libaries,点击add jars,选择本工程的lib的jar文件,点击OK
    项目创建步骤(二)
    项目创建步骤(三)

    项目的结构
    1.beans(entity):主要用来创建实体类,
    2.dao:主要用来创建操作数据库的接口,
    3.impl:主要用来创建实现接口的类的定义,
    4.service:主要是用来定义业务逻辑类,
    5.ui:用来定义图形界面类,
    6.util:用来定义本项目中所有的公共的,全局的帮助类

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值