面向对象---中级

面向对象的选项卡

把面向过程的程序,改写成面向对象的形式

原则

-不能有函数套函数,但可以有全局变量

过程

onload    -    构造函数

全局变量   -    属性

函数        -   方法

改错

- this  事件,闭包,传参

对象与闭包

通过闭包传递this

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script>
//创建函数
function Bbb()
{
    var _this=this;
    this.b=5;

    document.getElementById(‘btn1‘).onclick=function ()
    {

        _this.show();
    };
}
//创建函数方法
Bbb.prototype.show=function ()
{
    alert(this.b);
};

window.onload=function ()
{
       //创建函数实例
    new Bbb();
};
</script>

this用法

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style>
#div1 input {background:#CCC;}
#div1 .active {background:yellow;}
#div1 div {width:200px; height:200px; background:#CCC; display:none;}
</style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script>
window.onload=function ()
{
    var oTab=new TabSwitch(‘div1‘);
};

function TabSwitch(id)
{
    var oDiv=document.getElementById(id);
    this.aBtn=oDiv.getElementsByTagName(‘input‘);
    this.aDiv=oDiv.getElementsByTagName(‘div‘);
    var i=0;

    var _this=this;

    for(i=0;i<this.aBtn.length;i++)
    {
        this.aBtn[i].index=i;
        this.aBtn[i].onclick=function ()
        {
            _this.tab(this);
        };
    }
}

TabSwitch.prototype.tab=function (oBtn)
{
    for(i=0;i<this.aBtn.length;i++)
    {
        this.aBtn[i].className=‘‘;
        this.aDiv[i].style.display=‘none‘;
    }
    oBtn.className=‘active‘;
    this.aDiv[oBtn.index].style.display=‘block‘;
};
</script>
</head>

<body>
<div id="div1">
    <input class="active" type="button" value="教育" />
    <input type="button" value="财经" />
    <input type="button" value="aaa" />
    <div style="display:block;">1asdfasdfds</div>
    <div>2xzcvxzcv</div>
    <div>5332342345</div>
</div>
</body>
</html>

面向对象选项卡

本节知识点

对象和闭包

时间: 2024-12-30 20:04:33

面向对象---中级的相关文章

Python 3学习 ——面向对象

Python 学习--面向对象 写此博客 是为了激励自己,并且将自己的心得以及遇到的问题与人分享 一.面向对象基础 面向对象就是一个类和对象的应用. 1.定义方法: ---------------------------------------------------------------- class 类名: def 方法名(self , arg): print(arg) 中间人 = 类名() 中间人.方法名(arg) ------------------------------------

Kotlin——从无到有系列之中级篇(四):面向对象的特征与类(class)继承详解

如果您对Kotlin很有兴趣,或者很想学好这门语言,可以关注我的掘金,或者进入我的QQ群大家一起学习.进步. 欢迎各位大佬进群共同研究.探索 QQ群号:497071402 进入正题 在前面的章节中,详细的详解了类的使用,但是由于篇幅的限制,关于类的很多特性都没有讲解到.今天在这篇文章中,详细的讲解Kotlin中类的特性.如果您对Kotlin中的类还没有一个整体的了解的话,请参见我上一篇文章Kotlin--类(class)详解 众所周知,Kotlin是一门面向对象的开发语言.那么他也有面向对象语言

python 学习_第三模块 面向对象(中级)

1.组合 # # 组合的使用 class People: def __init__(self,name,age,sex): self.name = name self.age = age self.sex = sex class Teacher(People): def __init__(self,name,age,sex,level,salary): super().__init__(name,age,sex) self.level = level self.salary = salary d

公共技术点之面向对象六大原则

概述 在工作初期,我们可能会经常会有这样的感觉,自己的代码接口设计混乱.代码耦合较为严重.一个类的代码过多等等,自己回头看的时候都觉得汗颜.再看那些知名的开源库,它们大多有着整洁的代码.清晰简单的接口.职责单一的类,这个时候我们通常会捶胸顿足而感叹:什么时候老夫才能写出这样的代码! 在做开发的这些年中,我渐渐的感觉到,其实国内的一些初.中级工程师写的东西不规范或者说不够清晰的原因是缺乏一些指导原则.他们手中挥舞着面向对象的大旗,写出来的东西却充斥着面向过程的气味.也许是他们不知道有这些原则,也许

软考中级笔记

9大管理总复习 5大过程组 范围管理 1)      范围管理的过程和各自的工具是什么? 2)     产品范围包含(产品规格),( 性能技术指标)的描述. 3)     项目范围是否完成以什么为衡量标准. 以项目管理计划,项目范围说明书,WBS,以及WBS字典作为衡量标准. 要基于项目管理计划来度量 4)     WBS的表示形式是什么?各有什么优缺点? 树型和列表形式. 优点 缺点 树型 层次清晰,非常直观,结构性强 不容易修改,对于大的复杂的项目很难表示出项目的全景.一般应用在中小型项目中

PHP中级面试经历

又是将近年底,在11月份换工作裸辞,其实不是非常主流的选择,不过对于在小公司的我来说其实并没有多大影响. 只是最大的问题是自己的心理上的调整是否完全准备好了,自己的知识技能是否准备的完善了. 虽然在年初的时候计划在年底项目完结的时候辞职换一个正规的好的大一些的单位,期间做过各种努力不过多事循环往复,东一下西一下,最后并没有自己特别的突出的点,这一点在面试的时候也被面试官所指出了.所以这个在今后的日子里需要特别注意的一个内容. 另外裸辞加裸面真是有些不不太好,然后再面试中去找自己的不足简直就是浪费

虚拟世界(代码)--浅谈面向对象编程感触

不知不觉已经来到北京一年了,接触编程也一年了,或许我已经不再是那个连HelloWord都要写了N遍都不理解的低级菜鸟了(因为现在是中级了!!~~依旧是菜鸟) 在之前从来没有接触过编程,也不知道什么面向对象编程,面向过程编程.我的代码人生就是从这面向对象编程开始的. 面向对象编程,接触了C#和Java两种编程语言,感触良多(说实话,我现在已经快记不得老师讲过的有哪些重点了).我根据自己所了解的谈谈这段时间的收获. 一.什么是面向对象编程? 最初,老师告诉我们C#和Java都是面向对象编程的语言.那

2014年8月25日,收藏家和杀手——面向对象的C++和C(一)

最近事情特别多,睡眠也都很晚,有点精神和身体混乱的感觉,所以想写写技术分析文章,让两者的我都调整一下.这篇技术分析文章是一直想写的,当前只是开篇,有感觉的时候就写写,属于拼凑而成,后续的篇章没有时间计划,随缘吧. 收藏家和杀手--面向对象的C++和C(一) 序 ========= 用了至少12年的C++,前些年Linux之父Linus在批评C++的时候(具体可看CSDN的<C++一无是处>所提到的这起事件:http://www.csdn.net/article/a/2010-06-12/218

程序员级别鉴定书 ----中级.NET开发者

面向接口.面向对象和面向方面编程区别 面向接口编程 是面向对象编程体系中的思想精髓之一 (博客园文章链接面向接口编程详解(一)——思想基础) 面向接口编程 接口是一组规则集合 面向对象编程 对具有相同行为和属性事物的封装 重用性.灵活性.扩展性 面向方面编程 (AOP面向方面编程) 接口和类的区别 关键字 class,interface 接口不能被实例化 接口支持多重继承 接口不去实现方法和属性 继承接口的类需要实现接口的所有方法 类可以被实例化 继承类的类不需要实现非abstract修饰的所有