第五周总结 & 实验报告(三)

2023-05-16

第五周总结

一、继承

      1.类的继承格式

          


class 父类{}
class 子类 extends 父类{}  

        2.扩展类的功能


class 父类{
       父类属性;
       ..........
       ..........
}


class 子类 extends 父类{
           新定义属性;
           ...........
           ...........
  

注意:只允许多层继承不能多重继承,(即一个子类只能继承一个父类,一个父类还可以有一个父类)

          子类不能直接访问父类的私有操作

 

二、方法的覆写

概念:指子类定义了与父类中同名的方法(被子类覆写的方法不能拥有比父类方法更严格的访问权)

 

 


例:
class
父类{ void print(){ System.out.println("父类 --》void print(){}"); } } class 子类 extends 父类{ public void print(){ //覆写父类中的方法,扩大了权限 System.out.println("子类 --》void print(){}"); } }

 

 

方法的重载与覆写的区别

 

区别点

重载

覆写

单词

Overloading

Overriding

定义

方法名称相同,参数的类型或个数不同

方法名称、参数类型、返回值类型全部相同

对权限没有要求

被覆写的方法不能拥有更严格的权限

范围

发生在一个类中发生

发生在继承类中

三、super关键字

1.super关键字可以从子类中调用父类中的构造方法

2.super关键字可以从子类中调用父类中的属性

3.super关键字可以从子类中调用父类中的方法


class 父类{
         定义属性
         构造方法设置属性
         ...........
         ...........
}

class 子类 extends 父类{
           (可增加属性扩展父类)
             ..........
             ..........
             public 方法名(参数){
                      super(父类属性);         //指定调用父类中的构造方法
             }
                 .........
}  

 

this与super 的区别

区别点

this

super

属性访问

访问本类中的属性如果本类中没有此属性,则从父类中继续查找

访问父类中的属性

方法

访问本类中的属性如果本类中没有此方法,则从父类中继续查找

直接访问父类中的方法

调用构造

调用本类构造

调用父类构造,必须放在子类构造方法首行

特殊

表示当前对象

三、final关键字

注意:

1.使用final声明的类不能有子类

2.使用final声明的方法不能被子类所覆写

3.使用final声明的变量即成常量,常量不可修改

 

四、抽象类

        (1)定义及使用规则:

                1.包含一个抽象方法的类必须是抽象类

                2.抽象类和抽象方法都要使用abstract关键字声明

                3.抽象方法只需声明而不需要实现

                4.抽象类必须要被子类继承,子类(如果不是抽象类)必须覆写抽象类中的全部抽象方法

           (2)抽象类的定义格式


abstract class 抽象类名称{
           属性;
           访问权限  返回值类型  方法名称 (参数){          //普通方法
                  ........
                  ........           
            }

            访问权限  abstract  返回值类型  方法名称 (参数);          //抽象方法
                 //在抽象方法中是没有方法体的
}

注意:抽象方法不要使用private声明

 

五、对象的多态性

(1)两种体现

          1.方法的重载与覆写

          2.对象的多态性

(2)两种类型

          1.向上转型:子类对象--->父类对象

          2.向下转型:父类对象--->子类对象

(3)对象转型


对象向上转型:父类 父类对象 = 子类实例;
对象向下转型:子类 子类对象 = (子类)父类实例;  

注意对象向下转型的要求

在进行对象的向下转型前,必须首先发生对象向上转型,否则将出现对象转换异常

 

 

实验报告(三)

 

实验 String类的应用

 

一、 实验目的

 

(1) 掌握类String类的使用

 

(2) 学会使用JDK帮助文档

 

二、 实验内容

 

1.已知字符串:"this is a test of java".按要求执行以下操作:要求源代码、结果截图。

 

① 统计该字符串中字母s出现的次数

 

② 统计该字符串中子串“is”出现的次数。

 

③ 统计该字符串中单词“is”出现的次数。

④ 实现该字符串的倒序输出

 

2.请编写一个程序,使用述算法加密或解密用户输入的英文字串要求源代码、结果截图。

 

 

 

 

 

 

3.已知字符串“ddejidsEFALDFfnef2357 3ed”。输出字符串里的大写字母数,小写英文字母数,非英文字母数

 

一、

实验源码:

 


package zifuc;

class Zifu {
    private String str;
    private String str1;
    
    public Zifu(String str,String str1) {
        this.setStr(str);
        this.setStr1(str1);
    }
    public Zifu(String str) {
        this.setStr(str);
    }
    
    public String getStr1() {
        return str1;
    }

    public void setStr1(String str1) {
        this.str1 = str1;
    }

    public String getStr() {
        return str;
    }
    public void setStr(String str) {
        this.str = str;
    }
    
    public void finds(String str,String str1) {
        int index;
        int count = 0;
        while((index = str.indexOf(str1)) > -1){
            count++;
            str = str.substring(index + 1);
        }
        System.out.print(str1+"的个数:");
       System.out.println(count);
    }
    public void finds1(String str,String str1) {
        int cout=0;
        String[] stringA=str.split(" ");
        for(int i=0;i<stringA.length;i++) {
            if(str1.equals(stringA[i])==true){
                cout++;
            }
        }
        System.out.println("单词“is”的个数:"+cout);
    }
    public void finds2(String str) {
        String[] stringA=str.split("");
        String[] stringB=str.split(" ");
        System.out.print("倒叙:");
        for(int i=stringA.length-1;i>=0;i--) 
            System.out.print(stringA[i]);
        System.out.print("\n"+"单词倒叙:");
        for(int i=stringB.length-1;i>=0;i--) 
            System.out.print(stringB[i]+" ");
    }
}  

 


package zifuc;

public class zifc1 {

    public static void main(String[] args) {
        Zifu st = new Zifu("this is a test of java","s");
        st.finds("this is a test of java", "s");
        Zifu st1 = new Zifu("this is a test of java","is");
        st1.finds("this is a test of java", "is");
        st1.finds1("this is a test of java","is");
        Zifu st3 = new Zifu("this is a test of java");
        st3.finds2("this is a test of java");
        
        
        
    }            
}  

 

实验结果:

 

二、

 

实验源码:

 

 


package jiami;

class Jiami {
    private String str;
    public Jiami(String str){
        this.setStr(str);
    }
    public String getStr() {
        return str;
    }
    public void setStr(String str) {
        this.str = str;
    }
    public void jiami(String str) {
        char[] Array = str.toCharArray();
        int a = str.length();
        char[] Array1 = new char[a];
        for(int i=0;i<Array.length;i++) {
if(i<a-3) Array1[i]
=Array[i+3];
else
Array1[i]=Array[i-a+3];
System.out.print(
Array1[i]); } } }

 


package jiami;
import java.util.*;
public class Jiami1 {

    public static void main(String[] args) {
        System.out.print("请输入:");
        Scanner str = new Scanner(System.in);
         String n =null;
         n=str.nextLine();
         Jiami st = new Jiami(n);
         st.jiami(n);
    }

}  

 

 

 

实验结果:

三、

实验源码:

 


package jisuan;

class Shuru {
    private String str;
    public Shuru(String str){
        this.setStr(str);
        
    }
    public String getStr() {
        return str;
    }
    public void setStr(String str) {
        this.str = str;
    }
    public void jisuan(String str) {
        char[] Array = str.toCharArray();
        int upcase=0;
        int lowcase=0;
        int count=0;
        for(int i=0;i<Array.length;i++) {
            if(Array[i]>='a' & Array[i]<='z')
                lowcase++;
            else if(Array[i]>='A' & Array[i]<='Z')
                upcase++;
            else
                count++;
        }
        System.out.println("小写:"+lowcase+"个"+"\n"+"大写:"+upcase+"个"+"\n"+"非字母:"+count+"个");
    }
    
}  

 


package jisuan;

import java.util.Scanner;
public class Shuru1 {

    public static void main(String[] args) {
        System.out.print("请输入:");
        Scanner sc = new Scanner(System.in);
        String str = null;
         str = sc.nextLine(); 
             Shuru st = new Shuru(str);
             st.jisuan(str);
             
    }

}  

 

 

实验结果:

四、总结

在写第一题时遇到了要使用String常用的方法,对于这些都不是很熟练

 

转载于:https://www.cnblogs.com/xu23/p/11593559.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

第五周总结 & 实验报告(三) 的相关文章

  • 服务器系统安装报价,服务器系统安装费用

    服务器系统安装费用 内容精选 换一换 外部镜像文件在从原平台导出前 xff0c 没有按照 Windows操作系统的镜像文件限制 的要求完成初始化操作 xff0c 推荐您使用弹性云服务器完成相关配置 流程如图1所示 云服务器的正常运行依赖于X
  • 嵌入式面试笔试题目——附部分答案

    1 如何自动创建设备文件 xff1f class create device create 2 led驱动编写有几种方式 xff1f 输入子系统 字符设备驱动 总线platform led子系统 3 如何实现http服务器 xff1f tc
  • 多线程的优缺点

    何时使用多线程技术 何时避免用它 是我们需要掌握的重要课题 多线程技术是一把双刃剑 在使用时需要充分考虑它的优缺点 多线程处理可以同时运行多个线程 由于多线程应用程序将程序划分成多个独立的任务 因此可以在以下方面显著提高性能 1 多线程技术
  • 单片机应用编程技巧问答

    1 C语言和汇编语言在开发单片机时各有哪些优缺点 答 xff1a 汇编语言是一种用文字助记符来表示机器指令的符号语言 xff0c 是最接近机器码的一种语言 其主要优点是占用资源少 程序执行效率高 但是不同的CPU xff0c 其汇编语言可能
  • php获取今日开始时间戳和结束时间戳

    1 php获取今日开始时间戳和结束时间戳 beginToday 61 mktime 0 0 0 date 39 m 39 date 39 d 39 date 39 Y 39 endToday 61 mktime 0 0 0 date 39
  • BDA驱动学习笔记(1):功能拓扑图

    功能拓扑图 Functional Topology xff1a BAD的目标是不管硬件或者接收信号如何变 xff0c 它的整体架构可以不做大调整 xff0c 为此BDA引入功能拓扑图的概念 xff0c 它把类似DirectShow Filt
  • linux 流量监控利器:iftop

    在类Unix系统中可以使用top查看系统资源 进程 内存占用等信息 查看网络状态可以使用netstat nmap等工具 若要查看实时的网络流量 xff0c 监控TCP IP连接等 xff0c 则可以使用iftop iftop是什么 ifto
  • VS Code C++ 代码格式化方法(clang-format)

    前提条件 安装扩展C C 43 43 xff0c 扩展程序将自动安装clang format clang format默认安装路径为c Users wqr57 vscode extensions ms vscode cpptools 0 1
  • 为ubuntu服务器安装gnome图形桌面

    一般租用的服务器安装服务器版的LINUX xff0c 很少会安装桌面的 xff0c 主要是觉得浪费资源吧 xff0c 不过我这样的菜鸟还是喜欢图形桌面 xff0c 下面主要记录下这次为ubuntu 11 04版本安装GNOME xff0c
  • js表单验证 方法

    1 长度限制 lt p gt 1 长度限制 lt p gt lt form name 61 a nsubmit 61 34 return test 34 gt lt textarea name 61 34 b 34 cols 61 34 4
  • 海量数据处理之倒排索引

    前言 xff1a 本文是对博文http blog csdn net v july v article details 7085669的总结和引用 一 xff0c 什么是倒排索引 问题描述 xff1a 文档检索系统 xff0c 查询那些文件包
  • linux 服务器杀毒,一次Linux服务器***查杀经历

    1客户自己的服务器由于种了 xff0c 往外发送大量数据包 xff0c 被服务商切断网络 虽然没有网络不能直接登录服务器 xff0c 但是可以通过服务商提供的WEB控制面板进入操作系统 首先使用命令查看相关连接 xff1a netstat
  • 问题请教:关于同一个POD中多容器的广播信息问题

    广大博友好 xff0c 最近在K8S集群中遇到一个问题 xff0c 贴出来同大家分享一下 同一个POD中多个容器 如何处理广播信息 xff1f 经测试 同一个POD中当先启动的容器占用广播端口后 xff0c 其他的容器启动就会报bind e
  • JAVA在线观看视频教程完整版

    今天给大家介绍一下JAVA在线观看视频教程完整版 xff0c 我们知道Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言 xff0c 是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台
  • Dockerfile镜像的制作

    Dockerfile镜像的制作 如果学习Docker xff0c 那么制作镜像这一步肯定不能少的 xff0c 别人给你的是环境 xff0c 而你自己做的才是你最终需要的东西 xff0c 接下来就记录一下如何制作一个满足自己的镜像 xff0c
  • OpenWRT 编译教程

    1 安装Ubuntu 到 http www ubuntu org cn desktop get ubuntu download 下载 xff0c 版本随便 xff0c 我选的是10 10 32位版 安装过程就不说了 xff0c 图形化安装
  • 树莓派VNC搭建相关教程+Ubuntu16.04连接vncserver灰屏问题!

    树莓派VNC搭建相关教程 xff1a 为了节省money xff0c 于是我决定用VNC界面来代替显示器 xff0c 为后面做C 43 43 Qt以及Python Qt开发打下基础 xff0c 我别无选择 xff01 下面开始进入正题 xf
  • linux中wait系统调用

    系统中的僵尸进程都要由wait系统调用来回收 xff0c 下面就通过实战看一看wait的具体用法 xff1a wait的函数原型是 xff1a include lt sys types h gt 提供类型pid t的定义 include l
  • go 使用channel交叉打印奇偶数

    方法1 使用两个协程一个管道 xff0c 一个协程输入 xff0c 另一个协程接收 xff0c 保证i在两个协程中的值一样 package main import 34 fmt 34 34 sync 34 var wg sync WaitG
  • 事件冒泡机制和事件委派 以及回调的匿名函数参数

    1 事件冒泡机制 xff1a 事件冒泡机制也就是当一个事件绑定到一个元素上时 xff0c 如果这个元素不存在或者回调函数返回ture 那么这个事件就会向上冒泡 xff0c 继续绑定这个元素的父级元素直至document xff08 如果事件

随机推荐

  • Linux 内核硬件抽象

    我们结束 PCI 的讨论 通过快速看一下系统如何处理在市场上的多种 PCI 控制器 这只 是一个信息性的小节 打算来展示给好奇的读者 内核的面向对象分布如何向下扩展到最 低层 用来实现硬件抽象的机制是通常的包含方法的结构 它是一个很强功能的
  • 客户端服务器信息交互,select实现客户端和服务器端的信息交互(TCP socket)

    实现功能 xff1a 客户端 xff1a lt 1 gt 从标准输入 键盘 读入信息 xff0c 然后通过socket发送到服务器端 lt 2 gt 接收来自服务器端的信息 xff0c 并显示到终端里 服务器端 xff1a lt 1 gt
  • 软件测试人员在工作中如何运用Linux

    从事过软件测试的小伙们就会明白会使用Linux是多么重要的一件事 xff0c 工作时需要用到 xff0c 面试时会被问到 xff0c 简历中需要写到 对于软件测试人员来说 xff0c 不需要你多么熟练使用Linux所有命令 xff0c 也不
  • Ubuntu虚拟机可以上网,可以ping网络,但是无法update和install,报连接不上服务器的错误解决方案:...

    http askubuntu com questions 711889 err apt get update on ubuntu 14 04 br br br 即使给Ubuntu配置了代理 xff0c terminal能ping通网络 xf
  • JT∕T 905 -2014 出租汽车服务管理信息系统的相关协议研究

    出租汽车服务管理信息系统 xff08 JT T 905 2014 xff09 国家的相关技术要求2014年7月正式出台 xff0c 总体有四部分 xff0c 第 1 部分 xff1a 总体技术要求 xff1b 第 2 部分 xff1a 运营
  • 常用的DC插头公头的尺寸

    2 0 0 6mm xff1a 这种应该是用在诺基亚黑白屏那种手机上的充电插头 2 5 0 7mm xff1a 这种不知用在哪里 3 5 1 35mm xff1a 应该是以前那种小型的磁带机放音机上用的 4 0 1 7mm xff1a 已知
  • 链式队列总结

    基本数据结构之 链式队列 链式队列就是一个操作受到限制的单链表 xff0c 学会了单链表再来写这个就是轻松加愉快 xff0c 但是貌似我去用了两个小时搞定 xff0c 主要是基础差 xff01 队列的基本操作就是入栈和出栈 xff0c 还可
  • float c语言存储格式,float a=1.0f 这里的1.0f中的“f”代表什么 ?float的储存格式?...

    float a 61 1 0f 这里的1 0f中的 f 代表什么 xff0c 有什么意思 xff0c 在C语言里面 xff0c 解答详细点啊 xff01 xff01 xff01 f 代表这个数据是float类型的常量 xff0c 如果你直接
  • 简单实现一个go协程池

    协程池简单来说就是一个管道进 xff0c 一个管道出 xff0c 多个协程工作 实现一 xff1a 无顺序协程工作 package main import 34 fmt 34 var workerNum 61 3 func worker i
  • package.xml

    package xml 也是一个 catkin 的 package 必备文件 xff0c 它是这个软件包的描述文件 xff0c 在较早的 ROS 版本 rosbuild 编译系统 中 xff0c 这个文件叫做 manifest xml xf
  • docker-更新镜像

    更新镜像 更新镜像之前 xff0c 我们需要使用镜像来创建一个容器 w3cschool 64 w3cschool docker run t i ubuntu 15 10 bin bash root 64 e218edb10161 在运行的容
  • 实时监控、直播流、流媒体、视频网站开发方案设计简要

    欢迎大家积极开心的加入讨论群 群号 371249677 xff08 点击这里进群 xff09 一 本地推送端 1 本地 xff1a 采用javaCV xff08 安卓和java平台推荐javaCV xff09 ffmpeg openCV或者
  • 学完嵌入式可以做什么呢?我们为什么要学习嵌入式?

    就目前中国市场行情来看 xff0c IT技术已经进入了高速发展的阶段 xff0c 互联网开始逐渐步入物联网的科技时代 xff0c 可以说嵌入式开发技术在物联网领域应用最为广泛 xff0c 正是嵌入式开发行业十分火热 xff0c 很多大学毕业
  • 微软服务器软件维护,软件更新维护 - Configuration Manager | Microsoft Docs

    软件更新维护 04 27 2021 本文内容 适用范围 xff1a Configuration Manager Current Branch 可从 Configuration Manager 控制台和软件更新点组件属性中计划和运行 WSUS
  • 用C#来开发CAD插件,含源代码

    CAD插件看起来很神秘 xff0c 其实一个合格码农经过几天就能快速掌握 没什么秘密 xff0c 开发CAD插件和winform一样简单学几个类库用法就是 xff08 只是太多人不喜欢知识分享 xff09 xff0c 在CAD里展现界面和w
  • linux C/C++服务器后台开发面试题总结

    一 编程语言 1 根据熟悉的语言 xff0c 谈谈两种语言的区别 xff1f 主要浅谈下C C 43 43 和PHP语言的区别 1 PHP弱类型语言 xff0c 一种脚本语言 xff0c 对数据的类型不要求过多 xff0c 较多的应用于We
  • 如何设置树莓派 -Zero 自启动连接WIFI

    1 首先我们需要一台可以读取树莓派跟文件系统的Linux虚拟机 比如Ubuntu 将树莓派SD卡系统插入电脑 xff0c 识别并打开rootfs文件夹 xff0c 切换到 96 rootfs etc wpa supplicant 96 目录
  • Linux Shell 小数比较

    bin bash expr 方法是错误的 xff0c 在比较相同位数时可以 xff0c 当位数不同就会出错 xff0c 如100 00 gt 70 00就会得出错误的结果 a 61 123 b 61 123 c 61 99 99 rat 6
  • rpc通信的实现方式(以grpc为例)

    基础知识 RPC xff08 Remote Procedure Call xff09 xff1a 远程过程调用 它是一种调用方式 xff0c 可以像调用本地方法那样调用远端方法 protobuf Protocol Buffers 一种开源跨
  • 第五周总结 & 实验报告(三)

    第五周总结 一 继承 1 类的继承格式 class 父类 class 子类 extends 父类 2 扩展类的功能 class 父类 父类属性 xff1b class 子类 extends 父类 新定义属性 xff1b 注意 xff1a 只