class Login1 { createout() { //这个函数的返回值就是一个div标签 var odiv = document.createElement('div'); odiv.innerHTML = '我是一个登录框' document.body.appendChild(odiv); //把这个div加进去 odiv.style.display = 'none'; //这个登录框默认是不显示的 return odiv } } class Singleton { //这个是在初始化的时候 做一个动态判断 单例模式 constructor(name) { if (Singleton.aaa) { //有属性? 那么就返回这个属性 实际上后面再进来 返回的永远都是第一次进来的属性 return Singleton.aaa; } Singleton.aaa = this; //第一次进来没有属性 你就等于我们this this.name = name // 即当前正在创建的实例 赋值给 Singleton.aaa。 } } var l11 = new Login1(); // var s11 = new Singleton(l11.createout()); // var s2= new Singleton('222'); // console.log(s1===s2); //true 这里注释的是 测试我们创建2个实例对象 时候相等 验证单例模式时候成功 var btn = document.getElementById('btn'); btn.onclick = function () { // console.log('点击了一下'); //测试点击事件有无触发 var s11 = new Singleton(l11.createout()); //无论这个声明丢在哪里 他的对象s11永远只会生成一次 s11.name.style.display = 'block'; }
以上是用另外一种思路实现的 ,再类的初始化阶段 创建一个单例模式
主要是课堂这段话 闭包+判断每太能完全明白
return result || (result = fn.apply(this, arguments))
return
result || (result = fn.apply(
this
, arguments))
老师这36行哪错了,一开始我敲到plane后( . )不出getRect,我导了个Constant plane才没报错,但是控制台报错,是不是我导错了包
老师,我也导入了jstl的两个jar包了,但是浏览器报错了,您能帮我看看是哪里错了吗?谢谢老师
在包装类中是不是自动调用了equals所以两个对象的地址才会相等
package com.bjsxt.test3; public class Preson { private String name; Private int id; private int pwd; public Preson(){ } public Preson(String name,int id,int pwd){ this.name=name; SetAge(age); } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getId() { return id; } public void setId(int id) { this.id = id; } public int getPwd() { return pwd; } public void setPwd(int pwd) { this.pwd = pwd; } } class test{ public static void main(String[] args){ Person p= new Person(); p.setName("小杨"); p.setAge(30); System.out.println(p); } }
l老师,这错哪了
老师问下下边给单行代码添加注释,有快捷键么?
/*通用选择器 *代表该页面中的所有的元素 */
<!--<p style="color: red;">我们不一样</p><!--键值对的方式存在的,color不是属性是样式了!快
老师那个 target 指定的打开位置只是在第一次有效吗
我第二次打开的时候怎么就新开一个网页标签了呢?
源码:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <ul> <li><a href="http://www.baidu.com" target="ifm">百度</a></li> <li><a href="http://www.taobao.com" target="ifm">淘宝</a></li> <li><a href="http://www.jd.com" target="ifm">京东</a></li> </ul> <br /> <iframe width="800" height="600" name="ifm"></iframe> </body> </html>
效果:
ifram 和 framset 都一样
这块我还是不太明白,比如说左子树不为空时,执行这行代码进行递归
this.left.inorderTraverasl();
当左子树为空时,是不是应该执行这行代码进行输出
System.out.println(this.item);
后续判断右子树不为空时,继续执行这行代码继续进行递归
this.right.inorderTraverasl();
但是为什么右子树后面就不用添加这行代码进行输出了呢,而是直接在左子树的输出代码进行打印
continue不加的还是会回归到这个while循环中啊,那最后这个continue是不是可以不加呢import java.util.Scanner;public class SalaryCalculator { public static void main(String[] args) { System.out.println("******我的薪水计算器******"); System.out.println(" 输入88退出程序,输入66进入下一个计算"); Scanner s =new Scanner(System.in); while (true) { System.out.println("请输入每月的薪水"); int monthSalary = s.nextInt(); System.out.println("请输入几个月薪水"); int months = s.nextInt(); int yearSalary = monthSalary * months; if (yearSalary > 200000) { System.out.println("恭喜你,工资超过大多数人"); } else if (yearSalary < 200000 && yearSalary > 0) { System.out.println("很不幸,但你还需努力"); } System.out.println("请输入"); int a = s.nextInt(); if (a == 88) { break; } else if (a == 66) { System.out.println("gg"); continue;/*这个continue不加的运行起来还是会回归到这个wuile循环中,那么这个这个continue是不是可以不加了 */ } else { System.out.println("gg"); break; } } }}
Animal a1 = new Cat();
上面这行代码中的Animal a1为什么是父类引用?什么父类引用?
2. static void animalCry (Dog d){
...........
}
上面这个代码怎么理解?(Animal a)这个是什么意思?
3. animalCry(a1);
这行代码中(a1)是什么意思?这行代码是调用d方法吗?
4. 调用的方式都有哪几种?
vim 是什么意思
vim readme.text
def mylog(type): def decorator(func): def infunc(*args, **kwargs): if type == "文件": print("文件中:日志纪录") else: print("控制台:日志纪录") return func(*args, **kwargs) return infunc return decorator @mylog("文件") def fun2(a, b): print("使用功能2", a, b) # return 100 if __name__ == '__main__': fun2(100, 200) # print(fun2(100, 200))
老师,在装饰器不接受参数的情况下,@mylog相当于fun2=mylog(fun2)。
那在接收参数时,@mylog("文件")能不能改写成上述形式呢?怎么改写呢?还有想请老师帮我解释下外面再套一层来接收装饰器参数这种方式是怎么执行出这样的结果的?问题有点多麻烦老师帮我解释清楚一点,谢谢老师!!!
empNum=0 salarySum=0 salarys=[] while True: s=input('请输入员工的薪资(按Q或q结束)') if s.upper=='Q': print('录入完成,退出') break if float(s)<0: continue empNum+=1 salarys.append(float(s)) salarySum+=float(s) print('员工数{0}'.format(empNum)) print('录入薪资:',salarys) print('平均薪资{0}'.format(salarySum/empNum))
老师我想问一下,这个代码运行之后为什么不管是输入Q还是q都报错呢 代码是和老师讲的一样的呀
老师每次改为程序之后,我看着直接就可以运行了,我的每次都提示要先保存,老师的是保存了我没有看到吗,还是有设置了什么,然后这样的
老师 IPython 与Python有什么区别呢
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637