黑马程序员JavaEE基础班知识点整理.docx

上传人:大张伟 文档编号:11684935 上传时间:2021-08-30 格式:DOCX 页数:30 大小:60.94KB
返回 下载 相关 举报
黑马程序员JavaEE基础班知识点整理.docx_第1页
第1页 / 共30页
黑马程序员JavaEE基础班知识点整理.docx_第2页
第2页 / 共30页
黑马程序员JavaEE基础班知识点整理.docx_第3页
第3页 / 共30页
黑马程序员JavaEE基础班知识点整理.docx_第4页
第4页 / 共30页
黑马程序员JavaEE基础班知识点整理.docx_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《黑马程序员JavaEE基础班知识点整理.docx》由会员分享,可在线阅读,更多相关《黑马程序员JavaEE基础班知识点整理.docx(30页珍藏版)》请在三一文库上搜索。

1、黑马程序员JavaEE基础班知识点整理天地玄黄,宇宙洪荒。如果你也和我一样看过不少网络小说,那你的想象力肯定很丰富,这点作为程序员是很重要的。如果你和我一样喜欢黑客帝国银河系漫游指南钢铁侠三体西部世界。那有可能科幻就是你坚持钻研技术的动力来源。虽然我们暂时不能像黑客帝国里一样进入虚拟世界,不能像邓肯一样到宇宙尽头餐馆吃饭,没有贾维斯的智能管家系统,也不能把机器人做的无法分辨真伪,但是如果没有人们对未来的想象我们的技术就没有了追求。这些追求促使我们不断的学习,让技术不断的前进,我相信这些电影电视小说里的情节一定会实现。抱有这样的期待和好奇很多同学来到黑马学习技术,首先接触的就是黑马的基础班。视频

2、课程,讲义是必须的,但是我们还要有知识的梳理。今天我们就整理了基础班的一下问 答和笔试题供大家交流学习。 希望大家梳理一下自己的基础知识, 基础知识是我们技术飞船 的主架,主架坚固才能让我们在宇宙里航行的更远 理论知识点、基础概念1、面向对象的理解并举例2、面向对象的三大特性,并分别阐述对每个特性的理解3、阐述成员变量和局部变量的区别4、构造方法的概念和作用,和一般方法的区别5、静态代码块、构造代码块、构造方法的特点及执行顺序6、描述类和对象的关系7、创建对象的步骤等二、IO流理论知识点:1、io流的基本流都有哪些,简单说说基本流的体系2、字节流和字符流的使用场景3、拷贝文本文件一般会用到哪个

3、流?为什么?4、在io流中拷贝文件一般会用哪几个流?5、在io流的拷贝过程中,通过 while循环读取字节进行拷贝,需要通过哪个流的什么方法读取字节6、File类的常用方法都有哪些?7、遍历指定目录下的文件的所有名称,一般用什么方法?8、在io流中一般常用的字符编码集都有哪些?简单阐述几种9、在字符流中,带缓冲区的包装流都有哪一些?具体阐述一下。10、为什么read ()方法返回值是int类型?11、标准输入流和输出流是什么?三、集合理论知识点1、 集合的由来2、 数组和集合的使用场景3、 数组和集合的区别4、 集合的遍历5、 在迭代集合中元素时,可不可以通过集合对象的方法操作集合中的元素?6

4、、 List的三个子类的特点7、 栈和队列数据结构8、 List有三个儿子,在不同的场景分别应该使用谁呢?9、 HashSet保证元素唯一的原理10、 TreeSet两种排序方式11、 list集合和set集合有什么区别?12、双列集合获取键和值的两种方式13、 HashMap 和 Hashtable 的区别14、 Collection 和 Collections 的区别?四、反射理论知识点1、 反射概述2、 获取类的字节码文件三种方式五、线程理论知识点1、 线程的生命周期。2、 多线程的使用场景是什么?3、 简述通过Runnable实现多线程的步骤。4、 线程和进程的区别是什么?5、 一个线

5、程从等待状态被唤醒后是直接进入运行状态么?6、 实现多线程有几种方式?7、 对常用的实现多线程的方法做一个对比。8、 如何使用匿名内部类实现多线程?9、 如何获取当前线程的名字?10、如何实现线程的等待和休眠?11、 Sleep和Wait方法的可以传参数么?12、 Sleep方法和 Wait方法的参数代表什么意义?13、如何唤醒等待中的线程?14、同步代码块和同步方法的使用场景是什么?15、同步方法的锁对象是什么?16、 对懒汉式和俄汉式做一个对比。17、什么是工厂设计模式?18、死锁产生的原因是什么?19、简述线程池的应用场景。20、 Timmer 类的使用场景。21、说一下你所学过的和线程

6、安全有关并且是线程安全的类有哪些编程知识点一、IO流编程知识点:1、车库里有各种牌子的车,请根据这个生活中的案例用代码实现出来。有一个garage 类(车库类),里面有很多车,车库类有车名 (name),车牌号(number), 颜色(colour),价格(price)等属性。提示用户输入自己喜欢的三种车的车名,车牌号,颜色,价格。然后根据输入的车的价格的降序进行排序,将输出的结果存到根目录下的a.txt中。比如: 路虎-京B8888-黑色-12000002、提示用户输入一串字符串,统计出字符串中每个字符出现的次数,将结果写入到a.txt中。二、集合编程知识点:1、按照以下需要实现相关功能,需

7、求如下:1)分别键盘录入5个人的相关信息(姓名、年龄、性别)2)定义一个方法将键盘录入的相关信息封装成Person对象,把对象存储在集合中并且遍历输出Person对象所有相关信息。3)将集合中Person对象年龄大于60的对象删除并且将其相关信息输出到控制台上2、已知有一 Map集合,请实现如下需求:A :向map集合中添加3组数据,例如:1=woaijavajavaaiwo;2=woaiheima,b ;B:提示用户录入编号及内容,然后将内容( value )进行反转/例如:用户输入woaijava 存入顺序为avajiaow;C:将集合中的值写入到D:a.txt中。三、线程编程知识点:1、

8、通过继承Thread类的方式创建两个线程,在Thread类的构造方法中指定线程的名字,开启线程并输出10次每次执行的是哪条线程。2、用多线程知识完成模拟抢红包的过程,5个人共抢10个红包,红包的金额 0 6元不等(包含0和6),每个人相当于1个线程。在控制台打印出每个人抢到红包的总金额。四、JDBC知识点:利用SQLyog创建itheimadb 数据库和stu表,表中字段有:name(varchar 类型),age (int 类型),java (double 类型),c (double 类型),oc(double 类型),Chinese (double 类 型),并将以下数据添加到 stu表中

9、(以上操作均可以使用 SQLyog完成);利用JDBC连接 itheimadb 数据库使用sql语句按要求完成以下功能idname age java coc Chinese1zs1210098100202ls245051921003andi34201015604aliy213010015655wn1180218712a.输出年龄在20岁以上的学员所有学科的总分b.将andi的java成绩改为100 , C语言成绩改为60c.在控制台上打印出Java学科和c学科都是60分以下的学员姓名参考答案:一 1 :车库类AppleScript纯文本查看复制代码?01 public classGarage

10、02privateString name;03privateString number;04privateString colour;05privateint price;public Garage(String name, String number, String colour, int price) super();this.name = name;this.number = number;this.colour = colour;this.price = price;public String getName() return name;public void setName(Stri

11、ng name) this.name = name;public String getNumber() return number;public void setNumber(String number) this.number = number;public String getColour() 06070809101112131415161718192021222324252627return colour;#29Override30public String toString() ,colour=31return Garage name= + name + , number= + num

12、ber +32+ colour + ”, price= + price + ;3334 public void setColour(String colour) 35 this.colour = colour;36 37 public intgetPrice()38 return price;39 40 public voidsetPrice(int price) 41 this.price = price;42 43 示例代码:AppleScript 纯文本查看复制代码 ?01 public class Test01 02 public static void main(String口 ar

13、gs) throws lOException 03ArrayList list = new ArrayList();System.out.println(请输入自己喜欢的三种车的车名,车牌号,颜色,价格);04050607080910111213141516171819202122232425Scanner sc = new Scanner(System.in);for (int i = 0; i 3; i+) String name = sc.next();String number = sc.next();String colour = sc.next();int price = sc.n

14、extInt();/ System.out.println(name+ +number+ +colour+ +price);Garage cars = new Garage(name,number,colour,price);list.add(cars);System.out.println( 添加成功! );for (int j = 0; j list.size() - 1; j+) / 降序排列for (int i = 0; i list.size() - 1 - j; i+) Garage car1 = list.get(i);Garage car2 = list.get(i + 1);

15、if (car1.getPrice() car2.getPrice() list.set(i + 1, car1);list.set(i, car2);26BufferedWriter bf = new BufferedWriter(new FileWriter(a.txt);27for (int i = 0; i list.size(); i+) 28bf.append(list.get(i).toString();29bf.newLine();30bf.flush();31/ System.out.println(list.get(i).toString();3233bf.close();

16、34System.out.println(信息已写入 a.txt);3536 一、2:AppleScript纯文本查看复制代码?01 public class Test02 02 public static void main(String口 args) throws IOException 03System.out.println(请输入一个字符串);04Scanner sc = new Scanner(System.in);05String str = sc.next();06 /System.out.println(str);07Set set = new HashSet();08091

17、011121314151617181920212223242526272829char chars = str.toCharArray();for (int i = 0; i chars.length; i+) set.add(charsi);/ 去重 ,Map map = new HashMap();for (int i = 0; i chars.length; i+) if (set.contains(charsi) & !map.containsKey(charsi) map.put(charsi, 1); else if (set.contains(charsi) & map.cont

18、ainsKey(charsi) map.put(charsi, (int) map.get(charsi) + 1);BufferedWriter bw = new BufferedWriter(new FileWriter(a.txt);for (Object key : map.keySet() bw.append(key + 出现了 + map.get(key) + 次);bw.newLine();bw.flush();bw.close();System.out.println( 信息已写入 a.txt);1010203040506070809101112131415161718Appl

19、eScript纯文本查看复制代码public class Test03 public static void main(String口 args) System.out.println(请输入5个人的相关信息:姓名,年龄,性别 );ArrayList list = new ArrayList();for (int i = 0; i =0; i-) if (list.get(i).getAge() 60) System.out.println(list.get(i)+已删除);list.remove(i);1920for (int i = 0; i list.size(); i+) 21Syst

20、em.out.println(list.get(i)+-);222324 二、2AppleScript纯文本查看复制代码?01 public class Test04 02 public static void main(String口 args) throws IOException 03Map map = new HashMap();04System.out.println(请输入编号及内容);05for(int i=0;i 0) synchronized (this) System.out.println(Thread.currentThread().getName();i-;2Appl

21、eScript纯文本查看复制代码01 public class Test06 02public static void main(String口 args) 0304050607080910111213141516171819202122232425People p = new People();Thread t1 = new Thread(p);Thread t2 = new Thread(p);Thread t3 = new Thread(p);Thread t4 = new Thread(p);Thread t5 = new Thread(p);t1.setName(t1);t2.set

22、Name(t2);t3.setName(t3);t4.setName(t4);t5.setName(t5);t1.start();t2.start();t3.start();t4.start();t5.start();while (!p.flag);for (Entry entry : p.map.entrySet() System.out.println(entry.getKey() +抢了 + entry.getValue() + 元);26272829303132333435363738394041424344454647class People extends Thread Map m

23、ap = new HashMap();boolean flag = false;private int num = 10;public void run() while (true) synchronized (this) if (num 0) try Thread.sleep(100); catch (InterruptedException e) e.printStackTrace();Random r = new Random();int money = r.nextInt(7);String name = Thread.currentThread().getName();if (!ma

24、p.containsKey(name) map.put(name, money);48495051525354555657585960 四、 else if (map.containsKey(name) map.put(name, map.get(name) + money);num-;System.out.println(num + + name + + money); else flag = true;break;sql命令Bus J F运三一| .TA塞质彳肝B历史记录自动其成:仃的卜+R一个标签,1cm可3列出所有标答,CtrHErtmOf列出匹配标釜CREATE二2一 二二三二:二

25、itheimaE) CREATE7 g 色10111213141516 12工皿fT才,二会L 二 3 tn (sid INI BRlMftRY KEY MJTO_lNCREMEin:t 郃AME飞三匚济M(20”AGE IK r7段值二.驼L三, eOC 2CJzLErChines t -丁石 IEIIHC stu (r ageP jaraf c, ocf ChinesEI /;_L;.E = (1 is 1 r r 121T r IC i * r 1 9 i1 , 1 IC d, 12 j ) r241JIEL ,Ol,.已口 J34 r 1 20 9 , 110苴上讶喳工,jitr j甲

26、方 Iwnl TllJE;口 EL 工 口 T.*Z0U杷2去数据 rzmmjava代码: AppleScript纯文本查看复制代码?01 public class Test07 02 public static void main(String口 args) throws ClassNotFoundException,03SQLException 04Class.forName(com.mysql.jdbc.Driver);05Stringurl = jdbc:mysql:/localhost:3306/itheima;06Stringusername = root;07Stringpass

27、word = 123;08Connection con = DriverManager.getConnection(url, username, password);09/ 插入一条数据10 Statement stat = con.createStatement();11 / int row =(sname,age,java,c,oc,chine学员所有学科的总12 /stat.executeUpdate(INSERTINTO stu13 VALUES(meng,26,80,8,100,20);14 / System.out.println(row);1516 / a 筛 选 结 果 - 输

28、 出 年 龄 在 20 岁 以 上 的17 18 ResultSet rst = stat.executeQuery(SELECT*FROM stu WHERE age 20);19 while (rst.next() 20 int sum = 0;21 String name = rst.getString(sname);22 sum = rst.getInt(java) + rst.getInt(c) + rst.getInt(oc)23 + rst.getInt(chinese);24 System.out.println(name + 的总分是: + sum);25 26 rst.cl

29、ose();2728 / b 修改数据-29 / 将andi的java成绩改为100, C语言成绩改为 6030313233343536373839404142434445464748495051int a = stat.executeUpdate(UPDATE stu SET java = 100,c = 60 WHERE sname = andi);/ c./ 在 控 制 台 上 打 印 出 Java 学 科 和 c 学 科 都 是 60 分 以 下 的 学 员 姓ResultSet rst2 = stat.executeQuery(SELECT sname FROM stu WHERE

30、java 60 AND c 60);while (rst2.next() System.out.println(Java 学科和 c 学科都是 60 分以下的学员姓名 + rst2.getString(sname);rst2.close();/ / d./ 输出 java , c , oc , chinese 这四科的平均分/ ResultSet rst3 = stat/ .executeQuery(SELECT AVG( java),AVG(c),AVG(oc),AVG(chinese) FROM stu);/ while (rst3.next() / System.out.println(java平均分: + rst3.getInt(1) + nc 平均分 :/ + rst3.getInt(2) + noc平均分: + rst3.getInt(3)/ + nchinese平均分 : + rst3.getInt(4);52/ 53/ rst3.close();5455stat.close();con.close();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1