java期末复习

这篇具有很好参考价值的文章主要介绍了java期末复习。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

简答题

抽象类与接口的异同

相同点

  • 都不能被实例化
  • 接口的实现类或抽象类的子类只有实现了接口或抽象类中的方法后才能实例化

不同点

  • 接口只有定义,不能有方法的实现,而抽象类可以有定义与实现
  • 接口强调特定功能的实现,而抽象类强调所属关系

JDBC数据库操作步骤

  1. 加载数据库驱动程序
  2. 建立数据库连接
  3. 创建SQL语句
  4. 执行SQL语句
  5. 处理结果集
  6. 关闭连接和释放资源

什么是匿名类,它的含义与定义形式?

匿名类是定义一个没有显示命名的类,它可以用作一个单独的实例或作为其他类的

定义形式:

new <父类或接口> {

};

预处理(PreparedStatement)和Statement的区别?

Statement接口在创建语句对象时,不带参数,进行查询更新操作时,再传入完整的SQL语句。

PreparedStatement接口创建预处理语句对象时,传入带通配符?的SQL语句,查询更新操作时不带参数

Super关键词的作用

  1. 访问父类被隐藏的成员变量
  2. 调用父类中被重写的成员方法
  3. 调用父类的构造方法

实例变量和类变量的区别文章来源地址https://www.toymoban.com/news/detail-800908.html

  1. 不同对象的实例变量互不相同
  2. 所有对象共享类变量
  3. 直接类名访问类变量

算法题

购物小票:
import java.util.*;
public class FoundPrice {
 public static void main(String args[]) {
 String s=" 牛奶 :89.8 元,香肠 :12.9 元 啤酒 :69 元 巧克力 :132 元";
 String regex="[^0123456789.]" ; // 匹配非数字的正则表达识
 String digitMess=s.replaceAll(regex,"*");
 StringTokenizer fenxi=new StringTokenizer(digitMess, "*");// 创建 fenxi, 用* 做分隔标记解析 digitMess 中的单词
 int number=fenxi.countTokens(); //fenxi 调用 countTokens() 方法返回单词数量
 double sum=0;
 while(fenxi.hasMoreTokens()) {
 String str=fenxi.nextToken(); //fenxi 调用 nextToken() 方法返回单词
 System.out.println(str);
 sum=sum+Double.parseDouble(str);
 }
 System.out.println(" 购物小票中的商品种类: "+number+" 种");
 System.out.println(" 购物小票中的价格总额: "+sum+"元");
 }
} 

字符输入输出流:
import java.io.*;
public class FileDemo {
    public static void main(String args[]) {
    File sourceFile =new File("A.txt");
    File targetFile =new File("B.txt");
    char c[]=new char[19];
    try{
        Writer out =new FileWriter(targetFile,true);
        Reader in =new FileReader(sourceFile);
        int n=-1;
        while((n=in.read(c))!=-1){
            out.write(c,0,n);
        }
        out.flush();
        out.close();
    }catch(IOException e){
        System.out.println("Error"+e);
    }
    }
}
把错别字替换为正确用字的字符串:
import java.util.regex.*;
public class ReplaceErrorWord {
    public static void main(String[] args) {
        String str = "忘记密码,不要惊慌失错,请登陆www.yy.cn或www.tt.cc";
        Pattern pattern;
        Matcher matcher;
        String regex = "登陆";
        pattern = Pattern.compile(regex); //使用regex初始化模式对象pattern
        matcher = pattern.matcher(str); //得到检索str的匹配对象matcher
        while (matcher.find()) {
            String s = matcher.group();
            System.out.print(matcher.start() + "位置出现:");
            System.out.println(s);
        }
        System.out.println("将\"登陆\"替换为\"登录\"的字符串:");
        String result = matcher.replaceAll("登录");
        System.out.println(result);
        pattern = Pattern.compile("惊慌失错");
        matcher = pattern.matcher(result);
        System.out.println("将\"惊慌失错\"替换为\"惊慌失措\"的字符串:");
        result = matcher.replaceAll("惊慌失措");
        System.out.println(result);
    }
}
猜大小:
import java.util.Scanner;
import java.util.Random;
public class GuessNumber {
    public static void main(String args[]) {
        Scanner reader = new Scanner(System.in);
        Random random = new Random();
        System.out.println("给你一个1-100之间的整数,猜测这个数");

        //[0,100)间的随机整数
        int realNumber = random.nextInt(100)+1;
        int yourGuess = 0;
        System.out.print("输入你猜的数");
        yourGuess = reader.nextInt();
        while (yourGuess != realNumber) {
            if (yourGuess > realNumber){
                System.out.println("猜大了,再猜一次:");
                yourGuess = reader.nextInt();
            }
            else {
                System.out.println("猜小了,再猜:");
                yourGuess = reader.nextInt();
            }
        }
        System.out.println("猜对了!");
    }
}

综合题

1)设计接口Phone代表传统手机,在接口中定义receiveMessages()call()抽象方法。
2)设计接口SmartPhone代表智能手机,在接口中定义faceTime()方法,并使用extends关键字继承Phone接口,使其具有Phone接口的所有功能。
3)设计类MIPhone表示小米手机,类中定义useMIUI()方法,并实现SmartPhone接口的所有方法。
4)编写测试类Example11,测试类中对MIPhone进行实例化,并访问小米手机具有的各种功能。
 
代码:
interface Phone {
    void receiveMessages();
    void call();
}
interface SmartPhone extends Phone {
    void faceTime();
}
class MIPhone implements SmartPhone {
    @Override
    public void receiveMessages() {
        System.out.println("接收短信");
    }    
    @Override
    public void call() {
        System.out.println("打电话");
    }
    @Override
    public void faceTime() {
        System.out.println("进行FaceTime视频通话");
    }   
    public void useMIUI() {
        System.out.println("使用MIUI操作系统");
    }
}
public class Example11 {
    public static void main(String[] args) {
        MIPhone miPhone = new MIPhone();
        miPhone.receiveMessages();
        miPhone.call();
        miPhone.faceTime();
        miPhone.useMIUI();
    }
}
设计一个广告牌,希望所设计的广告牌可以展示许多公司的广告词。
(1)设计一个接口Advertisement ,有两个方法 showAdvertisement()getCorpName(),实现接口的类重写方法,给出各个公司的广告词和公司名称。
(2)设计广告牌类AdvertisementBoard,该类有一个show(Advertisement adver)方法,该方法的参数adver可以存放Advertisement接口的实现类的对象,同时,通过adver可以调用Advertisement接口中的两个方法 showAdvertisement()getCorpName(),显示公司的广告词和公司名称。
(3)分别创建WhiteCloundBlackLandCorp 两个Advertisement接口实现类。
(4)编写主类,输出两公司的广告词。
广告牌:
 interface Advertisement {//接口
    public void showAdvertisement();
    public String getCorpName();
}
 class AdvertisementBoard {
    Advertisement adver;   //声明接口变量

    public void setAdver(Advertisement adver) {
        this.adver = adver;   //adver接收对象的引用
    }
    public void show() {
        if(adver==null) {
            System.out.println("广告招商中");
        }
        else {
            adver.showAdvertisement();
        }
    }
}
 class WhiteClound implements Advertisement{
    public void showAdvertisement() {
        System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@@");
        System.out.println("飞机中的战斗机,哎yes!");
        System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@@");
    }
    public String getCorpName() {
        return "白云有限公司";
    }
}
 class BlackLandCorp implements Advertisement{
    public void showAdvertisement() {
        System.out.println("****************");
        System.out.println("劳动是爹\n土地是妈");
        System.out.println("****************");
    }
    public String getCorpName() {
        return "黑土集团";
    }
}
public class Show {
    public static void main(String[] args) {
        AdvertisementBoard board = new AdvertisementBoard();
        board.show();
        board.setAdver(new BlackLandCorp());
        board.show();
        board.setAdver(new WhiteClound());
        board.show();
    }
}

到了这里,关于java期末复习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java期末复习

    抽象类与接口的异同 相同点 都不能被实例化 接口的实现类或抽象类的子类只有实现了接口或抽象类中的方法后才能实例化 不同点 接口只有定义,不能有方法的实现,而抽象类可以有定义与实现 接口强调特定功能的实现,而抽象类强调所属关系 JDBC数据库操作步骤 加载数据

    2024年01月18日
    浏览(34)
  • Java期末复习题目合集

    编写一个类的方法,其输入参数为一个整数,输出为该整数各个位上的最大数字。 输入格式: 输入一个整数N 输出格式: 输出该整数N各个位上的最大数字 输入样例: 在这里给出一组输入。例如: 输出样例: 在这里给出相应的输出。例如: 答案: 编写代码,要求:输入参数是一

    2024年02月08日
    浏览(40)
  • Java --- 期末复习卷

    1.所有Java应用程序主类必须有一个名叫(    )的方法。[      ] A.method       B.main()         C.java()         D.hello   2.编写并保存了一个Java程序文件之后,(    )它。[      ] A.解释后并编译                  B.解释后并执行 C.编译后并重新保

    2024年02月07日
    浏览(33)
  • 期末复习(3)C语言数据结构_图论基础

    目录 导言:  定义: 一、边和度的概念: 1.1 无向图中的边和度: 1.2 有向图中的边和度: 1.3 度序列和握手定理: 二、弧和度的关系: 2.1 有向图中的弧和度: 2.2 度序列和握手定理在有向图中的应用: 2.3 邻接矩阵和邻接表在有向图中的表示: 2.4 强连通图: 三、完全图:

    2024年02月03日
    浏览(41)
  • Java ---基础知识& 期末复习

    1.Java是低级语言还是 高级语言    答:高级语言。 2.Java是面向对象的程序设计语言吗 答:是。 3. Java是编译型的计算机语言还是解释型的计算机语言。 答: 一种说法:Java是编译型的。因为所有的Java代码都是要编译的,.java不经过编译就无法执行。 另一种说法:Java是解释型

    2024年01月16日
    浏览(61)
  • 【期末复习之路】Java (四) A

    根据上文,我们这章写到了数组,数组完了,基本我们的基础就打牢靠了,接着我们就开始更新面向对象,面向对象是中期的内容,后面的就过的更快了,我的计划,差不多六月底会更新完Java这部分的内容,然后会更新数据库,数据结构与算法等一系列的内容,大家敬请期待

    2024年02月08日
    浏览(24)
  • Java期末复习——知识点+题库

    简单、面向对象、平台无关、多线程、动态 Java 所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。 关于 Java 标识符,有以下几点需要注意: 所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始 首字符之后可以是字母(A-Z 或者

    2024年02月02日
    浏览(64)
  • 大数据开发技术与实践期末复习(HITWH)

    目录 分布式文件处理系统HDFS 分布式文件系统 HDFS简介 块(block) 主要组件的功能 **名称节点 FsImage文件 名称节点的启动 名称节点运行期间EditLog不断变大的问题 SecondaryNameNode的工作情况 数据节点 HDFS体系结构 HDFS体系结构的局限性 HDFS存储原理 冗余数据保存 数据存取策略 数

    2024年02月11日
    浏览(38)
  • Java EE 期末复习提纲【太原理工大学】

    目录 一、题型 二、考点 1. MyBatis 2. Spring 3. Spring MVC 1. 选择题 20 个,每个 1 分,共 20 分。 2. 填空题 20 个,每个 1 分,共 20 分。 3. 判断题 10 个,每个 1 分,共 10 分。 4. 程序修改题 2 个,每个 5 分,共 10 分。 5. 程序阅读题 2 个,每个 12 分,共 24 分。 6. 编程题,1个,16 分

    2024年02月03日
    浏览(41)
  • 【c语言基础题】— —第七版,可当作日常练习和期末复习,有奇效哟!

    🎃个人专栏: 🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客 🐳Java基础:Java基础_IT闫的博客-CSDN博客 🐋c语言:c语言_IT闫的博客-CSDN博客 🐟MySQL:数据结构_IT闫的博客-CSDN博客 🐠数据结构:​​​​​​数据结构_IT闫的博客-CSDN博客 💎C++:C++_IT闫的博客-CSDN博

    2024年02月06日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包