第四周 se基础的结束

第四周 javase基础的结束
总结:第一周复习整体,第二周开始逐步熟练运用,第三周补上了集合,第四周重点在于多线程
本周学习内容:
1.多线程
2.工厂设计模式再理解
3.如何在低时间的睡眠下,可以做到精力足够
4.为什么这周内容只有原来的3分之1

多线程的学习
什么是多线程?
多线程如何创建?
多线程的方法与运用
什么是死锁,什么是同步锁,什么是异步锁
多线程的生命周期,原理
以上内容仅写问题不写答案

什么是工厂模式
工厂模式分为哪些
工厂模式遵循的原则?
工厂模式适用于哪些地方?

如何在低时间的睡眠下,可以做到精力足够
首先需要身体较为不错,至少还没熬废,每次睡觉时需完全放松,睡姿一定很重要,我的是夜晚睡眠时间/3=白天疲倦时间
很奇怪吧,每天睡得多白天更困了,可能是前面学太多了精神负载过高了,导致长期疲倦,直到最近才好,在白天的时候,需要注意精力消耗,不能过快也不能过慢,否则都会困,博主属于习惯性过快,看视频疯狂加速,习惯了在同时间内学习别人2-3倍的内容,这样的结果就是每天困,精神不在状态,精力不够用,衰老加速.
那么如何稳定的恢复呢?白天不能太放松什么也没做,在困的时候及时睡眠,身体发出的信号比所谓的科学依据要重要的多,比如:你感觉我饿了,还没到饭点,不吃就一定会肚子饿的难受,状态不佳.睡眠也是一样的,身体发出信号疲倦,而自身硬撑,结果就是过度消耗,导致加倍消耗,在恢复时也会变慢,其次是睡眠前不能吃太多东西,最好趁早吃,不要在睡的前1小时内猛喝水,喝太多,半夜不是起来,就是第二天身体难受,早上起来不要直接看手机,先洗漱,收拾,脸一定要洗干净,学会控制自身精神的放松与紧绷,让自身处于一个高续航模式以及多吃补充的(这个非常有用).,千万不要尴尬,每天疯狂学习,加上久坐,一定是很容易内虚了,在精力高度消耗下锻炼是很难的,喝枸杞还是吃什么都行,不要让自己虚着

为什么这周内容这么少
博主的第一周是每天头疼过来的,第一天的过度学习睡醒后就剧痛了,即使是看了网络上的右脑使用右脑,也没得用,右脑现在还在发出不适的信号(轻微疼痛感),在大量的内容迅速进入记忆后,又有大量的训练紧跟而上,而休息是远远不够(晚上睡不着,最快也得12点,不然是扛得住的),现在处于一个较为稳定的学习进步中,每天会像日常任务一样获得经验,然后肝度大幅降低,预计两周后恢复

本周代码块:本周博主打算试试非正常人编程了,首先我会去看我原来的文章,然后为这部分内容,添加上新的光彩

主类

//终于到了主类,一定要刺激点
public class PersonDemo  extends acPerson implements internotPerson,notP2,notP1{
    Person pp=new Person();
    public static void main(String[] args) {
         abPerson a=new Person();
         a.geteat();
         a.getClass();
         a.toString();
         a.getsleep();
         //这里写的类太少了,你们一定要多写点,来回继承
         a=new PersonDemo();
        a.geteat();
        a.getClass();
        a.toString();
        a.getsleep();
        PersonDemo p=new PersonDemo();
        Thread t1=new Thread(p);
        t1.start();
        PersonThr p1=new PersonThr();
        Thread t2=new Thread(p1);


    }


    //这段代码很容易被识破,所以要么写很多方法,要么写的像真的一样假
    @Override
    void givegiveuptotochar() {
        char a=(char) geteat();
        System.out.println("givegive摩多摩多upupget"+a+a+(a+1)+(a/2));
    }
//调用无关方法
    @Override
    public int geteat() {
        Eat();
        return 0;
    }

    @Override
    public int getsleep() {
        Sleep();
        return 0;
    }

    @Override
    public void Eat() {
        //在这里加入无用的东西,减缓速度,运行100次
        for (int i = 0; i <100 ; i++) {
            getsleep();
            geteat();
            notperson();
            ilikeeat();
        }
        System.out.println("吃饭了");
    }

    @Override
    public void Sleep() {
        int j=0;
        while (j>1){ //写true会报错,换一个
            for (int i=0;i<200;i++){
                if(i==150){
                    break;
                }
                getsleep();
                geteat();
                notperson();
                ilikeeat();
            }
        }
        System.out.println("睡觉了");

    }

    @Override
    public Person notperson() {
        //用于创建多态类对象
        abPerson a=new Person();
        acPerson b=new PersonDemo();
        a=b;
        acPerson c=new PersonDemo();
        b=c;
        internotPerson d=new Person();
        a=b;
        b=c;
        c=b;
        a=b;
        ArrayList alist=new ArrayList<>();
        //运行100次
        for (int i = 0; i <100 ; i++) {
            alist.add(a);
            alist.add(b);
            alist.add(c);
            alist.add(alist);
            alist.size();

        }
        //加到爆,再删除
        alist.clear();
        for (int i = 0; i <100 ; i++) {
            alist.add(a);
            alist.add(b);
            alist.add(c);
            alist.add(alist);
            alist.size();

        }//再加上,负载
        //看到就头皮发麻,如何在不改变这段代码的情况下解决报错呢?一定可以多掉一些头发
        if(c==a){
            System.out.println("你真是个小机灵鬼");
        }
        return null;
    }

    @Override
    public Person ilikeeat() {
        //用于创建自身的对象
        Person p=new Person();
        return p;
    }

    @Override
    public void run() {
      while (true) {
          synchronized (pp) {
              ilikeeat();
              geteat();
              getsleep();
              Eat();
              Sleep();
              notperson();
              givegiveuptotochar();
          }
      }
    }
}

副类大集合

//做抽象类接接口,再做一个抽象类继承再接接口,很刺激吧,这里给他三个正常的和三个不正常的.偷偷修改equals方法,让你不找很久看不到,
//  哈希吗值使用虚假值代替,让新手以为这是真的!为防止博主走火入魔,所以不会写出完全体的非正常人编程
public abstract class abPerson implements internotPerson {
    public abPerson(){
        super();//偷偷使用父类接口的无参构造方法
    }
    public abPerson(String name,int age,String sex){
        super();//偷偷使用父类接口的有参构造方法,并传值.
        this.name=name;
        this.age=age;
        this.sex=sex;
    }
    String name;
    int age;
    String sex;
    public String toString(){
        return "";
    }

    @Override
    public boolean equals(Object o) {
        if (this != o) return true;
        if (o != null || getClass() == o.getClass()) return false;
        abPerson abPerson = (abPerson) o;
        return age == abPerson.age &&
                name.equals(abPerson.name) &&
                sex.equals(abPerson.sex);
    }

    @Override
    public int hashCode() {
        int num=name.length()-sex.length();
        int num2=(num==1)?(age+63125+name.length()):(age+43152+sex.length());
        return num2;
    }
}
 abstract class acPerson extends abPerson implements internotPerson,notP1,notP2{
    String nmae;
    int aga;
    double sex;
    abstract void givegiveuptotochar();
 }
 interface internotPerson {
    int geteat();
    int getsleep();
}
interface notP1 extends internotPerson{
    void Eat();
    void Sleep();
}
interface notP2 extends internotPerson,Runnable{
    Person notperson();
    Person ilikeeat();
}
//首先是两个虚假值
public class Person extends abPerson implements notP2 {
    public Person(){
        super();
    }
    public Person(int index){
        super();
        index++;index++;index++;index+=125;
        char a=(char)index;
        System.out.println("开始了:"+a);
    }

    @Override
    public int geteat() {
        return 1;
    }

    @Override
    public int getsleep() {
        return 2;
    }

    @Override
    public Person notperson() {
        return null;
    }

    @Override
    public Person ilikeeat() {
        return null;
    }

    @Override
    public void run() {

    }
}
public class PersonThr extends Thread {
    PersonDemo p=new PersonDemo();
    @Override
    public void run() {
        synchronized (p){
        PersonDemo p=new PersonDemo();
        p.ilikeeat();
        p.geteat();
       p.getsleep();
      p.Eat();
       p. Sleep();
       p. notperson();
       p. givegiveuptotochar();
    }
    }

}

代码内存在不知道多少个错误,没有完全运用该非正常人编程(博主状态不佳)

热门文章

暂无图片
编程学习 ·

C语言二分查找详解

二分查找是一种知名度很高的查找算法&#xff0c;在对有序数列进行查找时效率远高于传统的顺序查找。 下面这张动图对比了二者的效率差距。 二分查找的基本思想就是通过把目标数和当前数列的中间数进行比较&#xff0c;从而确定目标数是在中间数的左边还是右边&#xff0c;将查…
暂无图片
编程学习 ·

GMX 命令分类列表

建模和计算操作命令&#xff1a; 1.1 . 创建拓扑与坐标文件 gmx editconf - 编辑模拟盒子以及写入子组(subgroups) gmx protonate - 结构质子化 gmx x2top - 根据坐标生成原始拓扑文件 gmx solvate - 体系溶剂化 gmx insert-molecules - 将分子插入已有空位 gmx genconf - 增加…
暂无图片
编程学习 ·

一文高效回顾研究生课程《数值分析》重点

数值分析这门课的本质就是用离散的已知点去估计整体&#xff0c;就是由黑盒子产生的结果去估计这个黑盒子。在数学里这个黑盒子就是一个函数嘛&#xff0c;这门课会介绍许多方法去利用离散点最大化地逼近这个函数&#xff0c;甚至它的导数、积分&#xff0c;甚至微分方程的解。…
暂无图片
编程学习 ·

在职阿里5年,一个28岁女软测工程师的心声

简单的先说一下&#xff0c;坐标杭州&#xff0c;14届本科毕业&#xff0c;算上年前在阿里巴巴的面试&#xff0c;一共有面试了有6家公司&#xff08;因为不想请假&#xff0c;因此只是每个晚上去其他公司面试&#xff0c;所以面试的公司比较少&#xff09; ​ 编辑切换为居中…
暂无图片
编程学习 ·

字符串左旋c语言

目录 题目&#xff1a; 解题思路&#xff1a; 第一步&#xff1a; 第二步&#xff1a; 第三步&#xff1a; 总代码&#xff1a; 题目&#xff1a; 实现一个函数&#xff0c;可以左旋字符串中的k个字符。 例如&#xff1a; ABCD左旋一个字符得到BCDA ABCD左旋两个字符…
暂无图片
编程学习 ·

设计模式--观察者模式笔记

模式的定义与特点 观察者&#xff08;Observer&#xff09;模式的定义&#xff1a;指多个对象间存在一对多的依赖关系&#xff0c;当一个对象的状态发生改变时&#xff0c;所有依赖于它的对象都得到通知并被自动更新。这种模式有时又称作发布-订阅模式、模型-视图模式&#xf…
暂无图片
编程学习 ·

睡觉突然身体动不了,什么是睡眠痽痪症

很多朋友可能有这样的体验&#xff0c;睡觉过程中突然意识清醒&#xff0c;身体却动弹不了。这时候感觉非常恐怖&#xff0c;希望旁边有一个人推自己一下。阳光以前也经常会碰到这样的情况&#xff0c;一年有一百多次&#xff0c;那时候很害怕晚上到来&#xff0c;睡觉了就会出…
暂无图片
编程学习 ·

深入理解C++智能指针——浅析MSVC源码

文章目录unique_ptrshared_ptr 与 weak_ptrstd::bad_weak_ptr 异常std::enable_shared_from_thisunique_ptr unique_ptr 是一个只移型别&#xff08;move-only type&#xff0c;只移型别还有std::mutex等&#xff09;。 结合一下工厂模式&#xff0c;看看其基本用法&#xff…
暂无图片
编程学习 ·

@TableField(exist = false)

TableField(exist false) //申明此字段不在数据库存在&#xff0c;但代码中需要用到它&#xff0c;通知Mybatis-plus在做写库操作是忽略它。,.
暂无图片
编程学习 ·

Java Web day15

第十二章文件上传和下载 一、如何实现文件上传 要实现Web开发中的文件上传功能&#xff0c;通常需要完成两步操作&#xff1a;一.是在Web页面中添加上传输入项&#xff1b;二是在Servlet中读取上传文件的数据&#xff0c;并保存到本地硬盘中。 需要使用一个Apache组织提供一个…
暂无图片
编程学习 ·

【51nod 2478】【单调栈】【前缀和】小b接水

小b接水题目解题思路Code51nod 2478 小b接水 题目 输入样例 12 0 1 0 2 1 0 1 3 2 1 2 1输出样例 6解题思路 可以发现最后能拦住水的都是向两边递减高度&#xff08;&#xff1f;&#xff09; 不管两个高积木之间的的积木是怎样乱七八糟的高度&#xff0c;最后能用来装水的…
暂无图片
编程学习 ·

花了大半天写了一个UVC扩展单元调试工具

基于DIRECTSHOW 实现的&#xff0c;用的是MFC VS2019. 详见&#xff1a;http://www.usbzh.com/article/detail-761.html 获取方法 加QQ群:952873936&#xff0c;然后在群文件\USB调试工具&测试软件\UVCXU-V1.0(UVC扩展单元调试工具-USB中文网官方版).exe USB中文网 USB中文…
暂无图片
编程学习 ·

贪心(一):区间问题、Huffman树

区间问题 例题一&#xff1a;区间选点 给定 N 个闭区间 [ai,bi]请你在数轴上选择尽量少的点&#xff0c;使得每个区间内至少包含一个选出的点。 输出选择的点的最小数量。 位于区间端点上的点也算作区间内。 输入格式 第一行包含整数 N&#xff0c;表示区间数。 接下来 …
暂无图片
编程学习 ·

C语言练习实例——费氏数列

目录 题目 解法 输出结果 题目 Fibonacci为1200年代的欧洲数学家&#xff0c;在他的着作中曾经提到&#xff1a;「若有一只免子每个月生一只小免子&#xff0c;一个月后小免子也开始生产。起初只有一只免子&#xff0c;一个月后就有两只免子&#xff0c;二个月后有三只免子…
暂无图片
编程学习 ·

Android开发(2): Android 资源

个人笔记整理 Android 资源 Android中的资源&#xff0c;一般分为两类&#xff1a; 系统内置资源&#xff1a;Android SDK中所提供的已经定义好的资源&#xff0c;用户可以直接拿来使用。 用户自定义资源&#xff1a;用户自己定义或引入的&#xff0c;只适用于当前应用的资源…
暂无图片
编程学习 ·

零基础如何在短时间内拿到算法offer

​算法工程师是利用算法处理事物的职业 算法&#xff08;Algorithm&#xff09;是一系列解决问题的清晰指令&#xff0c;也就是说&#xff0c;能够对一定规范的输入&#xff0c;在有限时间内获得所要求的输出。 如果一个算法有缺陷&#xff0c;或不适合于某个问题&#xff0c;执…
暂无图片
编程学习 ·

人工智能:知识图谱实战总结

人工智能python&#xff0c;NLP&#xff0c;知识图谱&#xff0c;机器学习&#xff0c;深度学习人工智能&#xff1a;知识图谱实战前言一、实体建模工具Protegepython&#xff0c;NLP&#xff0c;知识图谱&#xff0c;机器学习&#xff0c;深度学习 人工智能&#xff1a;知识图…
暂无图片
编程学习 ·

【无标题】

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题&#xff0c;有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注…