前提:已安装好jdk,配置好环境变量。我使用的是java 8.首先在自己的D盘下建一个文件夹,用来存放我们待会新建的项目,我创建了IdeaProject:1,第一步打开idea第二步选择创建java项目,并选择自己的jdk(我自己本地已经配置了所以有),没有可以点击new去自己的安装目录下找,一般默认安装C:\Program Files\Java,然后选择next 下一步第三步将“Create project from template”前面的勾去掉,然后点击“Next”第四步,选择项目存放目...
一、描述简单工厂模式又名静态工厂方法模式,是所有工厂模式中最简单的一个,它定义一个具体的工厂类来负责创建所有类的对象并初始化创建的对象,它主要由3部分组成:工厂类、抽象类、实现抽象类的具体类,然后通过客户端调用工厂类创建相应的对象。注意:简单工厂模式不属于GoF总结的23种设计模式,它是相当于初学java的HelloWorld案例,帮助初学者了解设计模式,增长信心的一个设计模式。二、简单工厂模式的优缺点优点:相对于直...
这又是一个新的开始,对象的重要性不言而喻。在JavaScript中创建对象是十分容易的,之前聊过的对象字面量和构造函数都可以达到目的。但是本篇中,我们越过那些方法,以寻求一些额外的对象创建模式。 本篇内容,我们将学到命名空间(namespace),依赖声明(dependency declaration)、模块模式(module pattern)、沙箱模式(sandbox pattern)。它们都可以帮助您组织应用程序代码的结构,并且降低隐含的全局变量带来的后果。其...
批量创建文件1int cont = 1;
2 String s = "E:\\学习资料\\Java笔记-";
3while(cont<100){
4 File f = new File(s+cont+".txt");
5if(!f.exists()){
6 f.createNewFile();
7 }
8 cont++;
9 }批量修改文件名 1 File file = new File("E:\\学习资料");2 String sf = file.getAbsolutePath();3 File[] f= file.listFiles();4int cont =1;...
1.第一种创建对象的方式:先定义类再创建对象 // 第一种创建对象的方式:先定义类再创建对象 function stu(sno, name, age){ this.sno = sno; this.name = name; this.age = age; this.study = function(){ alert("学号为"+this.sno+"的学生,姓名叫做"+this.name+",正在努力学习,年龄为"+this.age); } } var a = new stu(1,‘wang‘,23); a.study(); 2.第二种创建对象的方...
Session的追踪技术已知Session是利用cookie机制的server端技术。当client第一次訪问资源时 假设调用request.getSession() 就会在server端创建一个由浏览器独享的session空间,并分配一个唯一且名称为JSESSIONID的cookie发送到浏览器端,假设浏览器没有禁用cookie的话,当浏览器再次訪问项目中的Servlet程序时会将JSESSIONID带着。这时JSESSIONID就像唯一的一把钥匙 开启server端相应的session空间。进而获取到session中的内容(Se...
前面我们一共介绍了四种方法用来封装对象(工厂,构造模式,原型模式,构造+原型),并且重点对构造函数+原型模式做了一些改进,使之更加完美,那么除了这几种方法, 还有两种方式用来封装对象,还是那句话,选择适合自己的(其实每种方法都各有利弊,在我刚开始学习时总感觉就是拆东墙补西墙)。首先来看第一种方法function Person(name,age){var o=new Object();o.name=name;o.age=age;o.sayName=function(){console.log(this.na...
String str=new String("abc"); 紧接着这段代码之后的往往是这个问题,那就是这行代码究竟创建了几个String对象呢?相信大家对这道题并不陌生,答案也是众所周知的,2个。接下来我们就从这道题展开,一起回顾一下与创建String对象相关的一些JAVA知识。 我们可以把上面这行代码分成String str、=、"abc"和new String()四部分来看待。String str只是定义了一个名为str的String类型的变量,因此它并没有创建对象;=是对变量str进行初...
package com.fgy.demo01;publicclass MyThread extends Thread {@Overridepublicvoid run() {for (int i = 0; i < 20; i++) {System.out.println("run:" + i);}}
}/*** 创建多线程程序的第一种方式,创建Thread类的子类* 多次启动一个线程是非法的,特别是当线程已经结束执行后,不能再重新启动* java程序属于抢占式调度,哪个线程的优先级高,哪个线程就优先执行,同一个优先级,随机选择一个执行*/publicclass Demo01Thread{publ...
public class A { public class B { } }; 需要实例B类时,按照正逻辑是,A.B ab = new A.B();那么编译器就会出现一个错误--"is not an enclosing class"再翻看相关的Java代码,发现原来写法出错了!正确的做法是[java] view plain copy A a = new A(); A.B ab = a.new B(); 没有静态(static)的类中类不能使用外部类进行.操作,必须用实例来进行实例化类中类.原文:https://www.cnblogs.com/zhuyeshen/p/1208057...
JavaMail API使用javax.mail.Message类来表示一封邮件,Message类是一个抽象类,所以我们需要使用其子类javax.mail.internet.MimeMessage类来创建Message类的实例对象,如果我们创建的是一个简单文本邮件,那么MimeMessage类就可以满足我们的需求了,但是如果需要创建一封包含内嵌资源或者是带附件的复杂邮件,则需要使用到JavaMail API中的MimeMessage、javax.mail.internet.MimeBodyPart和javax.mail.internet.MimeMultipart等类...
基于组合与动态原型创建对象 方法一:在外部设置prototype<script type="text/javascript">/** * 为了解决原型所带来的问题,此处需要通过组合构造函数和原型来实现对象的创建 * 将属性在构造函数中定义,将方法在原型中定义 * 这种有效集合了两者的优点,是目前最为常用的一种方式 */ function Person(name,age,friends){ //属性在构造函数中定义 this.name = name; this.age = age; this.friends...
1.线程创建的方式常用有两种1)继承 Thread 类创建线程
2)实现 Runnable 接口创建线程2.Thread 和 Runnable的区别Thread 和 Runnable 的相同点:都是“多线程的实现方式”。
Thread 和 Runnable 的不同点:
Thread 是类,而Runnable是接口;Thread本身是实现了 Runnable 接口的类。我们知道“一个类只能有一个父类,但是却能实现多个接口”,因此Runnable具有更好的扩展性。此外, Runnable还可以用于“资源的共享”。即,...
一、创建节点创建元素 - 使用如下方法可以创建一个新的元素节点: - document.createElement(‘元素名‘);650) this.width=650;" src="/upload/getfiles/default/2022/11/11/20221111010844458.jpg" title="web.png" />创建文本节点 - 使用如下方法可以创建一个新的元素节点: - document.createTextNode(‘text‘);650) this.width=650;" src="/upload/getfiles/default/2022/11/11/20221111010844752.jpg" title="web....
1 <html>2 <head>3 <meta charset="utf-8">4 <title>javascript对象的学习</title> 5 </head> 6 <body>7 <h1>1.使用JS创建person对象,里面有id,name,age,sex属性 ,有eat,run方法 (2种方法创建)</h1><hr>8 <script language="javascript">9 document.write("<h2>"+"第一种方法"+"</h2>");
10var person=new Object();
11 person.id="10010";
12 person.name="小别";
13 person.age...