动手动脑1:如果类提供了一个自定义的构造方法,将导致系统不再提供默认构造方法。Foo obj1=new Foo()在此处调用应增加参数。

动手动脑2:静态初始化块只执行一次。创建子类型的对象时,也会导致父类型的静态初始化块的执行。

Integer的“诡异”特性”:

Integer类只对-128~127之间的对象做了缓存,(Integer)100 == (Integer)100两边装箱后,实际指向堆内存中同一个对象,(Integer)129 == (Integer)129,装箱为引用类型后,没有做缓存,指向堆内存中不同对象,所以比较结果为false。                                                                                                  

课堂练习: 新课程添加()        

package denglujiemian;
import java.awt.*;
import java.awt.event.*;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import javax.swing.*;
public class classinformation extends JFrame implements ActionListener {
 private static final long serialVersionUID = 1L;
 public static String sos[][] = new String[1000][3];
 private JLabel address=new JLabel("上课地点");
 private JButton ADD=new JButton("添加");
 private JLabel CNAME=new JLabel("课程名称");
 private JLabel TEA=new JLabel("课程教师");
 private JTextField jtxtName =new JTextField(); 
 private JTextField jtxt =new JTextField();
 private JTextField jtxttea= new JTextField(); 
 private JPanel jp=new JPanel();//面板
 private int f2=0;
 private static int sum=0;
 public void name() {
  CNAME.setBounds(20, 10, 80, 26);
  jp.add(CNAME);
 }
 public void teacher() {
  TEA.setBounds(20, 60, 80, 26);
  jp.add(TEA);
 }
 public void add() {
  ADD.setBounds(60, 180, 200,26); 
  jp.add(ADD);
  ADD.addActionListener(new ActionListener() {
   public void actionPerformed(ActionEvent e) {
    int f=0;
    int f5=0;
    char ch [] = new char[2];
    String n=jtxtName.getText();String p=jtxttea.getText();String d=jtxt.getText();String t = "";
    if(d.length()>=2) {
     ch[0]=d.charAt(0);
     ch[1]=d.charAt(1);
     t = new String (ch);
    }
    for(int i=0;i<sum;i++) {
     if(n.equals(sos[i][0])) {
      f5=1;
      JOptionPane.showMessageDialog(null,"课程重复");
     }
    }
    if(f5==1) {}
    else {
     f++;
    }
    if(p.equals("王建民")||p.equals("刘立嘉")||p.equals("刘丹")||p.equals("王辉")||p.equals("杨子光")) {
     f++;
    }
    else {
     JOptionPane.showMessageDialog(null,"没有这个教师");
    }
    if(t.equals("基教")||t.equals("一教")||t.equals("二教")||t.equals("三教")) {
     f++;
    }
    else {
     JOptionPane.showMessageDialog(null,"地点错误");
    }
    if(f==3) {
     sos[sum][0]=n;
     sos[sum][1]=p;
     sos[sum][2]=d;
     sum++;
     try {
      writeFile ();
     } catch (IOException e1) {
      // TODO Auto-generated catch block
      e1.printStackTrace();
     }
     JOptionPane.showMessageDialog(null,"添加成功");
    }
   }
   
  });
 }
 public void RegistrationE() {
  ADD.setVisible(false);
  this.setBounds(1000, 200, 300, 250);//设置界面出现在屏幕上的位置 
 }
 public classinformation(){  
  jp.setLayout(null); //满换行  
  jp.setBackground(Color.ORANGE);
  address.setBounds(20, 110, 80, 26);//设置文字30据左,120上下    
  jp.add(address);//显示    
  teacher();name();  
  add();  
  jtxtName.setBounds(80,10,180,30);//设置文本框80左右10上下(位置)180长30宽 
  jp.add(jtxtName); 
  jtxtName.addActionListener(this);    
  jtxt.setBounds(80,110,180,30); 
  jp.add(jtxt); 
  jtxt.addActionListener(this);    
  jtxttea.setBounds(80,60,180,30); 
  jp.add(jtxttea); 
  
  jtxttea.addActionListener(this);  
   
  this.add(jp); 
  this.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);  
  this.setResizable(false); 
  this.setBounds(800, 200, 300, 250);//设置界面出现在屏幕上的位置 
  this.setVisible(true); 
 } 
 
 public void Empty() {
  jtxt.setText("");  
  jtxtName.setText(""); 
  jtxttea.setText("");
 }
 public void actionPerformed(ActionEvent e){ 
  
  if(e.getSource()==jtxtName){ 
   jtxttea.requestFocus(); 
   } 
 } 
 public static void writeFile () throws IOException {
        FileWriter fw_o=new FileWriter("C:\\Users\\26624\\Desktop\\classinformation.txt");
        BufferedWriter bw=new BufferedWriter(fw_o);
        String s=new String();
        int i=0;
        for(i=0;i<sum;i++) {
         System.out.println((i+1)+": "+sos[i][0]+"  "+sos[i][1]+"  "+sos[i][2]);
            bw.write((i+1)+": "+sos[i][0]+"  "+sos[i][1]+"  "+sos[i][2]);
            bw.newLine();
        }
        bw.close();
    }
 public static void main(String[] args) {
  classinformation l1=new classinformation();
  l1.setTitle("课程添加"); 
  
  }
 }

Java第四节课总结的更多相关文章

  1. centos Linux系统日常管理1 cpuinfo cpu核数 命令 w, vmstat, uptime ,top ,kill ,ps ,free,netstat ,sar, ulimit ,lsof ,pidof 第十四节课

    centos Linux系统日常管理1  cpuinfo cpu核数   命令 w, vmstat, uptime ,top ,kill ,ps ,free,netstat ,sar, ulimit ...

  2. centos 目录文件管理 mkdir,rm,touch,误删文件extundelete,cp,mv,cat,more,less ,head,tail,chown,chmod ,umask 第四节课

    centos 目录文件管理 mkdir,rm,touch,误删文件extundelete,cp,mv,cat,more,less ,head,tail,chown,chmod ,umask  第四节课 ...

  3. 风炫安全web安全学习第三十四节课 文件包含漏洞防御

    风炫安全web安全学习第三十四节课 文件包含漏洞防御 文件包含防御 在功能设计上不要把文件包含的对应文件放到前台去操作 过滤各种../,https://, http:// 配置php.ini文件 al ...

  4. 风炫安全WEB安全学习第二十四节课 利用XSS钓鱼攻击

    风炫安全WEB安全学习第二十四节课 利用XSS钓鱼攻击 XSS钓鱼攻击 HTTP Basic Authentication认证 大家在登录网站的时候,大部分时候是通过一个表单提交登录信息. 但是有时候 ...

  5. 第四节课-反向传播&&神经网络1

    2017-08-14 这节课的主要内容是反向传播的介绍,非常的详细,还有神经网络的部分介绍,比较简短. 首先是对求导,梯度的求解.反向传播的核心就是将函数进行分解,分段求导,前向计算损失,反向计算各个 ...

  6. 《linux就该这么学》第四节课笔记,三章和四章开始!

    第三章 (根据课本和在线培训视频排版总结,借鉴请改动)         右键可打开终端练习             3.1:输入输出重定向 输入重定向:符号 "<" ,是一种 ...

  7. java基础第一节课随笔

    第一题:1.定义一个HelloWold类2.在类中定义主方法3.在主方法中使用输出语句在dos控制台打印HelloWorld 打印结果如:HelloWorld4.在案例中使用当行注释.多行注释添加相关 ...

  8. 零基础学Java第四节(字符串相关类)

    本篇文章是<零基础学Java>专栏的第四篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! String 本文章首发于公众号[编程攻略] 在Java中,我们经 ...

  9. 《linux就该这么学》第十四节课:第13章,部署DNS域名解析服务(bind服务)

    (借鉴请改动)  第十二章收尾  12.2.nfs网络文件系统 RHEL7默认安装了nfs,配置文件在  /etc/export  写入格式:共享目录    允许的客户端(参数)  ro        ...

随机推荐

  1. Python3(二) 表示‘组’的概念与定义

    现实世界中总存在一组一组的事物, 一.列表的定义 type(['hello','world',1,9,True,False]) = <class 'list'> type([[1,2,3, ...

  2. 吴恩达deepLearning.ai循环神经网络RNN学习笔记_没有复杂数学公式,看图就懂了!!!(理论篇)

    本篇文章被Google中国社区组织人转发,评价: 条理清晰,写的很详细! 被阿里算法工程师点在看! 所以很值得一看! 前言 目录: RNN提出的背景 - 一个问题 - 为什么不用标准神经网络 - RN ...

  3. 领域驱动设计(DDD)实践之路(一)

    本文首发于 vivo互联网技术 微信公众号 链接: https://mp.weixin.qq.com/s/gk-Hb84Dt7JqBRVkMqM7Eg  作者:张文博 领域驱动设计(Domain Dr ...

  4. React之虚拟DOM中的Diff算法

    一.React中的setState ( 异步函数,异步获取数据 ) 若操作的时间间隔短,它可以将多个setState结合成一个setState,减少虚拟DOM的比对次数,提高性能 二.同层虚拟DOM对 ...

  5. codewars--js--Happy numbers++无穷大判断

    问题描述: A happy number is a number defined by the following process: starting with any positive intege ...

  6. JDK SPI 机制

    一.概述 最早看到 SPI 这个机制是在 dubbo 实现 中,最近发现原来也不是什么新东西,竟然就是 JDK 中内置的玩意,今天就来一探究竟,看看它到底是什么玩意! SPI的全称是 Service ...

  7. Windows10访问Ubuntu子系统(WSL)的桌面环境

    原文地址:https://blog.csdn.net/xmh19936688/article/details/90212960 Windows10访问Ubuntu子系统(WSL)的桌面环境文章目录Wi ...

  8. springboot + mybatis 支持oracle和mysql切换含源码

    1.springboot 启动类加入bean 如下 // DatabaseIdProvider元素主要是为了支持不同的数据库@Beanpublic DatabaseIdProvider getData ...

  9. oracle数据泵导入导出部分用户

    问题描述:需要将140服务器中的tbomnew实例下的部分用户导入到118服务器下的tbompx实例中,本次导入导出的两个数据库均为19C 部分用户名:CORE,MSTDATA,BOMMGMT,CFG ...

  10. springcloud服务已经关闭但是Eureka显示服务状态一直为UP

    问题: 最近遇到一个很奇怪的问题,就是使用springcloud的时候,服务明明已经停止,但是在eureka中一直显示此服务状态为UP,这样就导致了请求再次过来的时候被分发到已经停止的服务上,其实这是 ...