JAVA101-135

article/2025/8/23 23:49:34

JAVA101-150

  • 字符串
    • StringBuilder
    • 链式编程简化代码
    • 对应的关系可以使用查表法,通过数组的对应的下表来改变成相应的值
  • 修改字符串
    • 字符串变整数
    • 重点:字符串变为数组
  • ArrayList集合的基本使用
    • 集合一开始的长度为0,如果用循环,进不去
  • 跳出两个循环(相当于跳出指定的循环)
  • 面向对面进阶
    • static
    • static的注意事项
    • 重新认识main方法
    • 继承
      • 子类继承的功能
    • 继承中成员变量和成员方法的继承特点
    • 方法的重写
    • 方法重写注意事项和要求
  • 继承中的构造方法和thissuper关键字
  • 多态
  • 包和final
    • final

字符串

StringBuilder

public class Test {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder("");
for(int i = 0;i <1000000;i++){
sb.append("abc");
}
System.out.println(sb);
}

在这里插入图片描述
在这里插入图片描述
ps:打印是是属性值而不是地址值,因为java在底层做了处理

sb.append(1);
sb.append(2.3);
sb.append(true);
sb.reverse()
int len = sb.length()
String str = sb.toString()

链式编程简化代码

对应的关系可以使用查表法,通过数组的对应的下表来改变成相应的值

修改字符串

可以有两个办法:
1.用substring进行截取,把左边的字符截取出来拼接到右侧去
2.可以把字符串先变成一个字符数组,然后调整字符数组里面数据,最后再把字符数组变成字符串。
注:1、传入的参数需要改变,因为循环的时候比较的是变换后的量,传入后也需要改变变换的量
eg:`strA = rotate(strA)
2、将字符串变为数组:
toCharArray()

字符串变整数

思路:
1.先遍历字符串依次得到每一个字符‘1’‘2’‘4’‘5’‘6’‘7’‘8’‘9’
再把字符变成对应的数字即可78123569把每一个数字组合到一起123456789
result = (str. chrAt (i)-48)+result * 10 通过ASCILL表转换

重点:字符串变为数组

ArrayList集合的基本使用

1.相比于长度固定的数组,可以追加数据
2.可以存储基本数据类型与引用数据类型
在这里插入图片描述3.添加对象
1.首先需要添加一个标准的javabean

package com.itheima;import java.util.ArrayList;public class test4 {public static void main(String[]  args) {ArrayList<Student> list=new ArrayList<>();Student s1= new Student("zhangsan",23);Student s2= new Student("lisi",21);Student s3= new Student("wangwu",21);list.add(s1);list.add(s2);list.add(s3);for (int i = 0; i < list.size(); i++) {Student stu=list.get(i);System.out.println(stu.getName()+","+stu.getAge() );}}
}

集合一开始的长度为0,如果用循环,进不去

注:
创建的学生对象是一个地址,如果给对象赋值,则最后只会显示一个对象,其余均被覆盖,因为对象是一个地址,所以每次循环要创建一个新的对象

跳出两个循环(相当于跳出指定的循环)

在这里插入图片描述

取一个名字
第二种写法:
System.exit()

面向对面进阶

static

private String name;
private int age;
private String gender;
public static String teacherName

加上static后所有的对象都共享 老师的姓名
在这里插入图片描述私有化构造方法
目的:不让外界创建他的对象

static的注意事项

静态方法只能访问静态变量和静态方法
非静态方法可以访问静态变量或者静态方法,也可以访问非静态的成员变量和非静态的成员方法
静态方法中是没有this关键字
总结:静态方法中,只能访问静态。
非静态方法可以访问所有。
静态方法中没有this关键字

重新认识main方法

在这里插入图片描述

继承

小结
1.什么是继承、继承的好处?
继承是面向对象三大特征之一,可以让类跟类之间产生子父的关系。
可以把多个子类中重复的代码抽取到父类中,子类可以直接使用,减少代码冗余,提高代码的复用性
2.继承的格式?

public class 子类 extends 父类{}

3.继承后子类的特点?
子类可以得到父类的属性和行为,子类可以使用。
子类可以在父类的基础上新增其他功能,子类更强大。

注:父类要用public,否则只能在本类中访问

子类继承的功能

在这里插入图片描述

继承中成员变量和成员方法的继承特点

就近原则:
this:本类
super:父类
在这里插入图片描述

方法的重写

在这里插入图片描述
应用场景:当父类中方法,不能满足子类现在的需求时,我们就需要把这个方法进行重写。

方法重写注意事项和要求

1.重写方法的名称、形参列表必须与父类中的一致。
2.子类重写父类方法时,访问权限子类必须大于等于父类(暂时了解:空着不写<protected< public)
3.子类重写父类方法时,返回值类型子类必须小于等于父类
4.建议:重写的方法尽量和父类保持一致。
5.只有被添加到虚方法表中的方法才能被重写

继承中的构造方法和thissuper关键字

在这里插入图片描述
如:

public class Student {
String name;
int age;
String school;
//需求:
/默认为传智大学
public Student() {
//表示调用本类其他构造方法
//细节:虚拟机就不会再添加super();
this(name:null,age:e,school:"传智大学");}public Student(String name, int age, String school) {
this.name = name;
this.age = age;
this.school = school;
}

会调用其他构造方法

多态

在这里插入图片描述
当传递的是一个类,可以引入所有子类

//创建对象(多态方式)
//Fu f = new Zi();
Animal a = new Dog();
//调用成员变量:编译看左边,运行也看左边
//编译看左边:javac编译代码的时候,会看左边的父类中有没有这个变量,如果有,编译成功,如果没有编译失败。
//运行也看左边:java运行代码的时候,实际获取的就是左边父类中成员变量的值
System.out.println(a.name);//动物
//调用成员方法:编译看左边,运行看右边
//编译看左边:javac编译代码的时候,会看左边的父类中有没有这个方法,如果有,编译成功,如果没有编译失败。
a.show();///Dog --- show方法//理解:
//Animal a = new Dog();
//现在用a去调用变量和方法的呀?是的
//而a是Animal类型的,所以默认都会从Animal这个类中去找
//成员变量:在子类的对象中,会把父类的成员变量也继承下的。父:name子:name
//成员方法:如果子类对方法进行了重写,那么在虚方法表中是会把父类的方法进行覆盖的。

转换类型:
Dog d=(Dog)a

if(a instanceof Dog){
Dog d = (Dog) a;
d.lookHome();
}else if(a instanceof Cat){
Cat c =(Cat)a;
c.catchMouse();
}else{
System.out.println("没有这个类型,无法转换")}

通过强转,才可以调用,这是多态的弊端之一

包和final

在这里插入图片描述
在这里插入图片描述
全类名:包名+类名

final

在这里插入图片描述


http://chatgpt.dhexx.cn/article/f0BKt7Dk.shtml

相关文章

Java-1214

Spring5总体学习内容 Spring基本概念IOC容器AopJdbcTemplate事务管理Spring5新特性 框架概述 Spring是轻量级的开源的JavaEE框架Spring可以解决企业应用开发的复杂性Spring有两个核心部分&#xff1a;IOC、Aop IOC&#xff1a;控制反转&#xff0c;把创建对象的过程交给Spri…

下载Google Play外国区APP技巧

安卓用户若遇到喜欢的APP是外国区的&#xff0c;只要翻墙就能下载。比起果粉还要注册&#xff0c;是简便很多。但有没有更简单的办法&#xff1f;这个必须有&#xff01;笔者前几天在网上闲逛时&#xff0c;就发现了一个给力的网站。让你不用翻墙&#xff0c;只需3个步骤&#…

Google Play国内应用市场发布版本步骤指导

应用发布步骤指导 前言Google Play华为小米Vivooppo 博客创建时间&#xff1a;2022.08.19 博客更新时间&#xff1a;2022.08.22 以Android studio build7.0.0&#xff0c;SDKVersion 31来分析讲解。如图文和网上其他资料不一致&#xff0c;可能是别的资料版本较低而已。 前言 …

Google Play App Signing的问题以及解决方式

Google Play App Signing是Google Play 的应用签名&#xff0c;在Google Play上创建项目的时候如果勾选了它&#xff0c;那么它就会生成一个签名文件&#xff0c;不管你上传到Google Play的apk是否用你的签名文件打包&#xff0c;最终都会被替换成Google Play App Signing里的签…

如何将Flutter开发的Android app 发布Google Play(谷歌应用商店)流程

将Flutter Android app 发布Google Play&#xff08;谷歌应用商店&#xff09;流程 一、首先就是要做到科学&#xff01; 二、打开google play官网&#xff0c;注册谷歌账号 三、打开谷歌开发者站点https://play.google.com/apps/publish/signup/创建你的App应用 四、创建完…

h5/uni-app打开手机app,没有则跳转到商店下载

需求&#xff1a;在做商品分享/直播分享时&#xff0c;app内分享出去的链接&#xff0c;能够在微信、手机浏览器打开。 遇到的问题&#xff1a; 1&#xff0c;Android&#xff0c;当手机没有下载app时&#xff0c;在浏览器打开&#xff0c;会下载app&#xff0c;但是手机下载了…

最新版Google Pay上传App指南

现在2022年&#xff0c;是时候来个最新版的操作指南 创建应用 使用谷歌市场开发者账号登录 开发者平台。成功登录后&#xff0c;单击 创建应用。 填写应用的 应用名称。选择应用的 默认语言。在应用或游戏处&#xff0c;选择 应用。根据个人情况选择免费或付费。 勾选 开发者…

网页下载Google Play 的App

网页下载Google Play 的App 文章目录[点击展开](?)[] 前言 当你想在google play上下载某个应用&#xff0c;而无奈手机的系统并没有安装google servicess&#xff0c;此刻是否有些捉急&#xff1f; 本文分享的是一个网站&#xff0c;它可以无需手机而直接通过网页下载Google P…

【Google Play】App Bundle 使用详解 ( 简介 | 应用内更新 | 即时更新 | 灵活更新 )

Google Play 上架完整流程 系列文章目录 【Google Play】创建 Google 开发者账号 ( 注册邮箱账号 | 创建开发者账号 ) 【Google Play】创建并设置应用 ( 访问权限 | 内容分级 | 受众群体 | 类别及联系方式 | 商品详情 ) 【Google Play】App Bundle 使用详解 ( 简介 | 应用内更…

Google Play上架App设置隐私政策声明问题

APP上架Google Play一定要设置隐私政策声明,否则是不给上架的 隐私政策解决方法,生成隐私内容&#xff1a; 点击网址进入 App Privacy Policy Generator 之后根据app的名称&#xff0c;类型&#xff0c;平台&#xff0c;选择对应的选项&#xff0c; 包含对应的第三方隐私服务…

WhatsApp的下载与更新

这两天登录手机&#xff08;安卓&#xff09;的WhatsApp&#xff0c;一直显示我的WhatsApp即将几天后更新&#xff0c;请及时更新到最新的版本&#xff0c;尝试了网上的多种方法&#xff0c;还是没有成功&#xff0c;当然不排除我笨的因素&#xff0c;后来我的小脑瓜子那么一转…

ubuntu安装google app engine环境

需要goog app engine的运行环境&#xff0c;结果翻找半天找不到怎么安装&#xff0c;做记录&#xff1a; 下载app engine &#xff0c; 地址如下&#xff1a; https://cloud.google.com/appengine/downloads?hlzh-TW 到这个网页&#xff0c;找不到下载地址&#xff0c;但却…

google play app下载方法测试

部分参考&#xff1a;http://www.zhihu.com/question/20232626 因为需求&#xff0c;需要从Google play上下载一个APP&#xff1a;Ticketmaster 寻找了一些方法&#xff1a; 基本要求&#xff1a;需要翻墙。 方法1&#xff1a;http://apk-dl.com/ &#xff08;不用翻墙&…

在电脑端下载google play上的app,将其下载成apk

想要下载googleplay上的app&#xff0c;但是没有直接的下载链接。这里推荐一个chrome浏览器上的插件&#xff1a;APK Downloader。 插件安装完成后&#xff0c;在google play搜索到需要下载的app后&#xff0c;将其网页URL复制到插件上生成下载链接即可。

直接下载Google Play上APP的安装包

1、先在GooglePlay上找到自己需要下载的Package Name或者软件的地址链接. 下图是APP提取网站的示意图&#xff1a; 2、打开Online APK Downloader(点击进入)&#xff0c;在输入框中粘贴刚才复制的Package Name或地址。点击“Generate DownIoad Link”。如果输入地址提示错误&a…

Google市场,APP版本更新实现方式

一、直接跳转google play应用详情 直接跳转到google play应用详情内由用户手动触发版本更新。 实现方式包括两种&#xff1a;跳转到google play app应用详情内和跳转到google play网页版应用详情内。 一般实现原则是用户如果安装了google play app跳转到app&#xff0c;未安…

如何从google play 网页下载app到本地

前提&#xff1a; 浏览器可以翻墙 操作 首先&#xff0c;通过电脑打开google play的官方页面&#xff08;https://play.google.com/store/apps&#xff09;&#xff0c;并找到你希望下载的应用&#xff0c;本文以微信为例子&#xff1b;打开微信的安装页面&#xff0c;找到浏…

APP下载页源码-带后台

简介&#xff1a; 带后台 带下载统计,带数据分析图,可一键编辑APP信息 此为1.0版本,后期会推出更多的新功能,尽请期待 注意:这个不是PHP开发的,用ASP.NET开发的,需要部署到window服务器,部署有点麻烦,选择win2019server版本,先在服务器上手动安装iis,不要用宝塔一键安装,宝塔安…