پرش به محتوای اصلی
مسیر تخصصی جاوا و Spring
درخواست پروژهارتباط با ماراهنما
جاواپرویاد بگیر، تمرین کن، حرفه‌ای بساز
خانهدوره‌هاآموزش رایگانوبلاگمدرس‌هاخدمات
خانه♨️ جلسه بیست و پنجم - Abstraction( انتزاع)
آموزش برنامه نویسی »

♨️ جلسه بیست و پنجم - Abstraction( انتزاع)

در این جلسه آموزشی زبان برنامه نویسی جاوا تمام تلاشم کرده ام که abstraction در جاوا را به زبان کاملا ساده آموزش بدم

۸ دقیقه مطالعهآموزش برنامه نویسی »آموزش جاوا و انجام پروژه های برنامه نویسی
♨️ جلسه بیست و پنجم - Abstraction( انتزاع)
محتوای منتخب جاواپرو

خلاصه مطلب

در این جلسه آموزشی زبان برنامه نویسی جاوا تمام تلاشم کرده ام که abstraction در جاوا را به زبان کاملا ساده آموزش بدم
نوع محتوامقاله آموزشی
موضوعآموزش برنامه نویسی »
زمان مطالعه۸ دقیقه
آخرین ویرایش۲۵ شهریور ۱۴۰۳

فهرست جلسات دوره مقدماتی جاوا

مقدمه اول | جاوا چیست؟

مقدمه دوم | تاریخچه جاوا

مقدمه سوم | ویژگی‌های زبان جاوا

جلسه اول | راهنمای دانلود و نصب JDK

جلسه دوم | اجرای یک برنامه جاوا در Notepad

جلسه سوم | راهنمای دانلود و نصب Eclipse

جلسه چهارم | ساخت اولین برنامه جاوا در Eclipse

جلسه پنجم | متغیر ها در جاوا

جلسه ششم | تغییر فونت محیط Eclipse

جلسه هفتم | عملگر‌های پایه ای جاوا

جلسه هشتم | دستورات شرطی

جلسه نهم | اشیا و کلاس ها

جلسه دهم | ورودی گرفتن

جلسه یازدهم | حلقه‌های کنترلی

جلسه دوازدهم | کلمه کلیدی static

جلسه سیزدهم | کلاس Math

جلسه چهاردهم | کلاس String

جلسه پانزدهم | آرایه‌های یک بعدی

جلسه شانزدهم | کنترل سطح دسرسی (Modifiers)

جلسه هفدهم | متدها در جاوا

جلسه هجدهم | کلمه کلیدی this

جلسه نوزدهم | کلاس‌های داخلی

جلسه بیستم | ارث بری در جاوا

جلسه بیست و یکم | کلمه کلیدی final

جلسه بیست و دوم | Overriding در جاوا

جلسه بیست و سوم | Polymorphism( چند ریختی)

جلسه بیست و چهارم | چندریختی را بهتر یادبگیرید

جلسه بیست و پنجم | Abstraction( انتزاع)

جلسه بیست و ششم | Encapsulation(کپسوله سازی)

جلسه بیست و هفتم | اینترفیس (Interface)

جلسه بیست و هشتم | کلاس Random

جلسه بیست و نهم | Exceptions (استثناها)

جلسه سی ام | کار با فایل در جاوا(Files and I/O)

جلسه سی و یکم | کلاس InputStreamReader

جلسه سی و دوم | کلاس OutputStreamWriter

جلسه سی و سوم | کلاس BufferedReader

جلسه سی و چهارم | کلاس BufferedWriter

جلسه سی و پنجم | Serialization در جاوا

جلسه سی و ششم | چندنخی(Multithreading)

جلسه سی و هفتم | آرایه دو بعدی در جاوا

جلسه سی و هشتم | کلاس ArrayList در جاوا

جلسه سی و نهم | Non Access Modifier در جاوا

دوره رایگان مقدماتی زبان جاوا
دوره رایگان مقدماتی زبان جاوا

اگه میخوای موارد زیر از جاوا رو بدونی جلسه بیست و پنجم رو دانلود کنAbstraction (انتزاع) شروع با مثال از دنیای واقعی برای درک بهتر مفهوم انتزاعAbstraction در جاوا کلاس های انتزاعی (Abstract Class) نحوه نوشتن کلاس abstractمتدهای انتزاعی (Abstract Methods) روش اعلام متدهای انتزاعی وقتی یک متد انتزاعی اعلام می شود دو پیامد دارد تمامی مفاهیم با مثال ساده توضیح داده شده است

Abstraction (انتزاع) فرایند پنهان کردن جزییات پیاده سازی برنامه و تنها نشان دادن قابلیت برنامه به کاربر (کسی که تنها استفاده کننده از برنامه می باشد) است.

خب تا اینجا یک تعریف رسمی از Abstraction یا انتزاع کردیم از آنجایی که ما با هم خیلی راحت هستیم رسمی بازی رو میزاریم کنار و راحت انتزاع یا Abstraction را با هم بررسی میکنیم 😊

من دیگه از اینجا به بعد بجای واژه Abstraction ،واژه انتزاع را به کار میبرم که هی نخوام زبان کیبرد رو پشت سرهم عوض کنم 😊

با مثال از دنیای واقعی شروع میکنم: مثال 1:انجام بازی در گوشی همراه مثلا وقتی شما گوشی همراه در دست دارید و دارید بازی می کنید از فرایند و جزییات پشت بازی خبر ندارید!! مثلا وقتی در یک بازی جنگی با یک اسلحه شلیک میکنید و گلوله به سمت هدف پرتاب می شود اصلا مهم نیست که شما بدونید چطور در این بازی گلوله داره حرکت میکنه و چطور وقتی به هدف برخورد میکند شما امتیاز میگیرید!!! در هنگام بازی تنها شما با چند دکمه ای که روی گوشی شما هست کار میکنید و هیچ خبری از پشت کار ندارید!!! انتزاع هم همین مفهوم رو دنبال میکنه ،انتزاع هدفش اینه جزییات برنامه باید از دید کاربر پنهان شود و تنها قابلیت های برنامه در معرض دید کاربر قرار گیرد.

مثال 2:فیلم سینمایی وقتی شما یک فیلم سینمایی را تماشا میکنید و از آن لذت میبرید از جزییات پشت صحنه و کادر کارگردانی و فیلم برداری و .... یعنی از جزییات کار بی خبر هستید و همزمان تنها صحنه های خود فیلم را می بینید در حالی که جزییات اجرای فیلم را پنهان کرده اند.

مثال 3:کامپیوتر همزمان که دارم این اموزش را برای شما تهیه میکنم تنها از قابلیت کامپیوتر یعنی دکمه های کیبرد استفاده میکنم و از جزییات پردازش این دکمه هایی که فشار می دهم ، مانیتوری که کلمات وارد شده را نمایش می دهد و ده ها قطعه ای که در کامپیوتر وجود دارد و هر یک عمل متفاوتی را انجام میدهد بی خبر هستم.

انتزاع هم میگه ما باید کاری کنیم که جزییات برنامه پنهان شود و تنها قابلیت برنامه را برای کاربر به نمایش بگذاریم.

با این کار هم امنیت برنامه بالا می رود و هم کاربر آسوده تر است.چرا امنیت برنامه بالا می رود؟ دوباره میریم سراغ مثال چون که بهترین راه یادگیری فقط مثال است و دیگر هیچ 😊

به نظر شما امنیت کدام کیس کامپیوتر زیر بالاتر است؟!

abstract در جاوا
abstract در جاوا

خب مسلما کیس گزینه الف) دارای امنیت بیشتری است،چون کاربر به جزییات آن دسرسی ندارد اما کیس ب) دارای امنیت پایین تری هست چون حتی یک کاربر عادی هم می تواند به جزییات و قطعات درون آن دسرسی داشته و آن را دستکاری کند و الله اعلم که چه بر سر این کیس آورد 😊 پس انتزاع در شی گرایی یک مفهوم خوبیست و به ما کمک میکنه با پنهان سازی جزییات پیاده سازی برنامه و تنها نمایش قابلیت برنامه به کاربر امنیت برنامه بالا رود.

Abstraction در جاوا:در جاوا ما کلاس مون رو میتوانیم انتزاع یا abstraction اعلام کنیم. در جاوا هر کلاسی را می شود انتزاعی اعلام کرد اما بهتر است کلاس هایی را انتزاعی اعلام کنیم که مفهوم کلی داشته باشند یعنی کلاسی که مفهوم کل تر ،بزرگ تر داشته و می تواند نقش پدر کلاس های دیگر را بازی کند:

مثال: مثلا کلاس Animal (حیوان) یک مفهوم کلی را در بر دارد وقتی ما میگوییم حیوان منظورمان مشخص نیست کدام و چه نوع حیوانی،آیا منظور ما از حیوان گربه یا سگ یا مرغ یا خروس یا ماهی و .... است؟یا کلاس automobile (اتومبیل) نیز یک مفهوم کلی را میرساند و مشخص نیست منظور از اتومبیل ماشین شخصی است یا اتوبوس یا قطار یا هواپیما یا کشتی و....است پس کلاس هایی نظیر Animal و automobile و.... که مفهوم کلی را میرسانند و می توانند نقش کلاس پدر را بازی کنند را می توانیم انتزاعی یا abstract تعریف کنیم.

کلاس های انتزاعی (Abstract Class):وقتی کلمه کلیدی abstract را قبل از کلمه class می آوریم کلاسمون تبدیل به یک کلاس انتزاعی (abstract) می شود.

در دوره پیشرفته برنامه نویسی جاوا به صورت ویدئویی به موضوع انتزاع(Abstract)پرداخته ایم.

نحوه نوشتن کلاس abstract:

public abstract class NameClass { }

یا این که می توانید هنگام ایجاد کلاس جدید و تعیین نام برای کلاس تیک گزینه abstract را بزنید: تصویر(1)

آموزش abstraction در جاوا
آموزش abstraction در جاوا

نتیجه :

public abstract class Animal {}

✔ یک کلاس انتزاعی (abstract) می تواند در بدنه خود یک متد از نوع انتزاعی (abstract) داشته باشد و بلعکس می تواند هیچ متد از نوع انتزاعی (abstract) در بدنه خود نداشته باشد.

✔ متد انتزاعی (abstract) به متدی می گویند که بدنه یا بلوک نداشته باشد!!!!یعنی تنها می تواند نوع،نام ،پارامتر داشته باشد و همچنین کلمه کلیدی abstract قبل از نوع متد آورده می شود:

• اگر یک کلاس حداقل یک متد انتزاعی (abstract) داشت حتما باید کلاس از نوع انتزاعی (abstract) اعلام و تعریف شود:

آموزش شی گرایی در جاوا
آموزش شی گرایی در جاوا

خطای کامپایل!!! ، زیرا این کلاس در بدنه خود یک متد انتزاعی (abstract) دارد اما کلاس از نوع انتزاعی (abstract) تعریف نشده است. شکل صحیح کلاس بالا بصورت زیر است:

آموزش abstract در جاوا
آموزش abstract در جاوا

• اگر یک کلاس از نوع انتزاعی (abstract) اعلام و تعریف کردیم دیگر نمی توان از آن نمونه و شی ایجاد کنیم.

متد abstract در جاوا
متد abstract در جاوا

• خب وقتی ما یک کلاس را انتزاعی اعلام میکنیم و دیگر نمی توانیم شی از ان ایجاد کنیم خب چطور به ویژگی ها و رفتار های آن دسری پیدا کنیم؟؟؟؟؟؟؟!!!!!!!!!!!!!!!!!! پاسخ: می توانیم از طریق کلاس دیگر کلاس انتزاعی را به ارث ببریم و متدهای انتزاعی آن را در کلاس فرزند پیاده سازی کنیم و از کلاس انتزاعی استفاده کنیم.

....ادامه این جلسه آموزشی را بصورت کامل و مرتب شده در لینک زیر دانلود کنید:(در صورت خرابی لینک گزارش دهید)

آموزش آسان و ساده زبان برنامه نویسی جاوا
آموزش آسان و ساده زبان برنامه نویسی جاوا

این جلسه آموزشی را می توانید بصورت کتاب الکترونیکی (PDF شده) در لینک زیر دریافت کنید.لینک دانلود

♨️ جلسه بیست و پنجم - Abstraction( انتزاع)
تصویر مرتبط با ♨️ جلسه بیست و پنجم - Abstraction( انتزاع)
♨️ جلسه بیست و پنجم - Abstraction( انتزاع)
تصویر مرتبط با ♨️ جلسه بیست و پنجم - Abstraction( انتزاع)
بخش هایی از کتاب جلسه بیست و پنجم - Abstraction( انتزاع) در جاوا را مشاهده می کنید برای دانلود بر روی لینک دانلود کلیک کنید
بخش هایی از کتاب جلسه بیست و پنجم - Abstraction( انتزاع) در جاوا را مشاهده می کنید برای دانلود بر روی لینک دانلود کلیک کنید
بخش هایی از کتاب جلسه بیست و پنجم - Abstraction( انتزاع) در جاوا را مشاهده می کنید برای دانلود بر روی لینک دانلود کلیک کنید
بخش هایی از کتاب جلسه بیست و پنجم - Abstraction( انتزاع) در جاوا را مشاهده می کنید برای دانلود بر روی لینک دانلود کلیک کنید
بخش هایی از کتاب جلسه بیست و پنجم - Abstraction( انتزاع) در جاوا را مشاهده می کنید برای دانلود بر روی لینک دانلود کلیک کنید
بخش هایی از کتاب جلسه بیست و پنجم - Abstraction( انتزاع) در جاوا را مشاهده می کنید برای دانلود بر روی لینک دانلود کلیک کنید
بخش هایی از کتاب جلسه بیست و پنجم - Abstraction( انتزاع) در جاوا را مشاهده می کنید برای دانلود بر روی لینک دانلود کلیک کنید
بخش هایی از کتاب جلسه بیست و پنجم - Abstraction( انتزاع) در جاوا را مشاهده می کنید برای دانلود بر روی لینک دانلود کلیک کنید
برچسب‌هاآموزش برنامه نویسی »آموزش زبان جاوا »آموزش جاوا »جلسه بیست و پنجم Abstraction( انتزاع)جلسات آموزشی جاواکتاب آموزش جاواکتاب کاربردی آموزش جاواAbstraction (انتزاع)جاوامفهوم انتزاع در جاوامفهوم Abstraction در جاواآموزش Abstraction در جاواکلاس های انتزاعیAbstract Classنحوه نوشتن کلاس abstract
دسترسی سریع

فهرست مطلب

۱فهرست جلسات دوره مقدماتی جاوا۲مقدمه اول | جاوا چیست؟۳مقدمه دوم | تاریخچه جاوا۴مقدمه سوم | ویژگی‌های زبان جاوا۵جلسه اول | راهنمای دانلود و نصب JDK۶جلسه دوم | اجرای یک برنامه جاوا در Notepad۷جلسه سوم | راهنمای دانلود و نصب Eclipse۸جلسه چهارم | ساخت اولین برنامه جاوا در Eclipse۹جلسه پنجم | متغیر ها در جاوا۱۰جلسه ششم | تغییر فونت محیط Eclipse۱۱جلسه هفتم | عملگر‌های پایه ای جاوا۱۲جلسه هشتم | دستورات شرطی۱۳جلسه نهم | اشیا و کلاس ها۱۴جلسه دهم | ورودی گرفتن۱۵جلسه یازدهم | حلقه‌های کنترلی۱۶جلسه دوازدهم | کلمه کلیدی static۱۷جلسه سیزدهم | کلاس Math۱۸جلسه چهاردهم | کلاس String۱۹جلسه پانزدهم | آرایه‌های یک بعدی۲۰جلسه شانزدهم | کنترل سطح دسرسی (Modifiers)۲۱جلسه هفدهم | متدها در جاوا۲۲جلسه هجدهم | کلمه کلیدی this۲۳جلسه نوزدهم | کلاس‌های داخلی۲۴جلسه بیستم | ارث بری در جاوا۲۵جلسه بیست و یکم | کلمه کلیدی final۲۶جلسه بیست و دوم | Overriding در جاوا۲۷جلسه بیست و سوم | Polymorphism( چند ریختی)۲۸جلسه بیست و چهارم | چندریختی را بهتر یادبگیرید۲۹جلسه بیست و پنجم | Abstraction( انتزاع)۳۰جلسه بیست و ششم | Encapsulation(کپسوله سازی)۳۱جلسه بیست و هفتم | اینترفیس (Interface)۳۲جلسه بیست و هشتم | کلاس Random۳۳جلسه بیست و نهم | Exceptions (استثناها)۳۴جلسه سی ام | کار با فایل در جاوا(Files and I/O)۳۵جلسه سی و یکم | کلاس InputStreamReader۳۶جلسه سی و دوم | کلاس OutputStreamWriter۳۷جلسه سی و سوم | کلاس BufferedReader۳۸جلسه سی و چهارم | کلاس BufferedWriter۳۹جلسه سی و پنجم | Serialization در جاوا۴۰جلسه سی و ششم | چندنخی(Multithreading)۴۱جلسه سی و هفتم | آرایه دو بعدی در جاوا۴۲جلسه سی و هشتم | کلاس ArrayList در جاوا۴۳جلسه سی و نهم | Non Access Modifier در جاوا
ادامه مسیر

پیشنهاد جاواپرو

موضوع را با آموزش‌های مرتبط ادامه دهید و نکته‌های کاربردی را در مسیر خود نگه دارید

مشاهده دوره‌ها
مطالب پیشنهادی

ادامه مطالعه

xدسته‌بندی نشده
۱۱ دی ۱۳۹۸ مطالعه کوتاه

x

پادکست شماره 3 – راه های کسب درآمد از برنامه نویسی

مطالعه مطلب
پادکست شماره 3 - راه های کسب درآمد از برنامه نویسیپادکست
۲۹ اردیبهشت ۱۴۰۴ مطالعه کوتاه

پادکست شماره 3 - راه های کسب درآمد از برنامه نویسی

در این پادکست برنامه نویسی به شیوه ها و راه های کسب درآمد از برنامه نویسی پرداخته ایم. یک کاغذ و قلم بردارید و به پادکست گوش بدید.

مطالعه مطلب
پادکست شماره 2 - چگونه وارد فضای برنامه نویسی شویم؟پادکست
۲۹ اردیبهشت ۱۴۰۴ مطالعه کوتاه

پادکست شماره 2 - چگونه وارد فضای برنامه نویسی شویم؟

در این پادکست برنامه نویسی یاد میگیریم که چگونه وارد فضای برنامه نویسی شویم و تخصص برنامه نویسی را به دست آوریم.

مطالعه مطلب
جاواپرومرجع تخصصی یادگیری و توسعهٔ جاوا

تجربه‌ای منظم، ساده و حرفه‌ای برای یادگیری عمیق جاوا، Spring و مهندسی نرم‌افزار؛ قابل استفاده در موبایل، تبلت و دسکتاپ

یادگیری

همه دوره‌هاآموزش رایگانمسیر یادگیریمدرس‌ها

جاواپرو

درباره ماخدمات تخصصیدرخواست پروژهبلاگ فنی

پشتیبانی

تماس با ماپرسش‌های متداولقوانین و حریم خصوصیثبت تیکت
خرید امنپرداخت فقط در درگاه رسمیپشتیبانی آموزشیمسیر ارتباط شفاف و پیگیری‌پذیردسترسی پایداروب‌اپ واکنش‌گرا روی همه دستگاه‌ها
© ۱۴۰۵ جاواپرو؛ همه حقوق محفوظ استتوسعه توسط پایاپینگ
خانهدوره‌هاسبد