آموزش رایگان صفر تا صد جاوا (Java) به زبان ساده
-
معرفی جاوا
-
ساخت اولین برنامه: Hello World
-
چاپ متن در جاوا
-
چاپ عدد در جاوا
-
نظرات (Comments) در جاوا
-
متغیرها جاوا
-
نمایش متغیرها (Display Variables) در جاوا
-
تعریف چند متغیر در جاوا (Java)
-
شناسایی متغیرها (Identifiers)
-
معرفی متغیرها با مثالهای واقعی
-
آشنایی با انواع دادهها (Data Types) در جاوا
-
آشنایی با اعداد (Numbers) در جاوا
-
آشنایی با نوع داده بولین (Boolean)
-
کار با کاراکترها و رشتهها در جاوا (Characters and Strings in Java)
-
مثال واقعی برای استفاده از انواع داده در جاوا
-
آشنایی با انواع دادههای غیرابتدایی (Non-Primitive Data Types)
-
آموزش مفهوم Type Casting در جاوا
-
آموزش عملگرها (Operators) در جاوا
-
آشنایی با رشتهها (Strings) در جاوا
-
آشنایی با الحاق رشتهها (String Concatenation)
-
اضافه کردن اعداد و رشتهها در جاوا
-
رشتهها و کاراکترهای خاص در جاوا
-
آشنایی با کلاس Math در جاوا
-
آشنایی با Boolean در جاوا
-
آشنایی با شرطها (Conditions) و دستورات شرطی (If Statements) در جاوا
-
آشنایی با دستور else در برنامهنویسی
-
آموزش عبارت else if در برنامهنویسی
-
آشنایی با عملگر شرطی کوتاه در جاوا (Ternary Operator)
-
آموزش شرطها (If..Else) در برنامهنویسی با مثالهای واقعی
-
آشنایی با Switch Statement در جاوا
-
آشنایی با حلقه While در جاوا
-
حلقه Do/While در جاوا
-
آشنایی با حلقه For در جاوا
-
حلقههای تودرتو (Nested Loops) در جاوا
-
حلقه For-Each در جاوا
-
آموزش دستورات Break و Continue در جاوا
-
آشنایی با آرایهها در جاوا (Java Arrays)
-
آموزش ساده استفاده از حلقهها برای پیمایش آرایهها در جاوا (Java Arrays Loop)
-
آرایههای چندبعدی در جاوا (Java Multi-Dimensional Arrays)
-
معرفی متدها در جاوا (Java Methods)
-
آموزش ساده: پارامترها و آرگومانها در متدهای جاوا (Java Method Parameters)
-
مفهوم بازگشت مقدار در جاوا (Java Return)
-
روش بارگذاری مجدد متدها در جاوا (Java Method Overloading)
-
آشنایی با محدوده متغیرها در جاوا (Java Scope)
-
بازگشت در جاوا (Java Recursion)
-
آشنایی با برنامهنویسی شیءگرا (Object-Oriented Programming یا OOP)
-
برنامهنویسی شیءگرا در جاوا (Java Classes/Objects)
-
آشنایی با ویژگیهای کلاس در جاوا (Java Class Attributes)
-
متدها در جاوا (Java Methods)
-
Constructor در جاوا
-
آشنایی با Modifiers در جاوا (Java Modifiers)
-
مفهوم کپسولهسازی (Encapsulation) در جاوا
-
راهنمای جامع پکیجها (Packages) و API در جاوا
-
وراثت (Inheritance) در جاوا – ساده و قابل فهم
-
پلیمورفیسم (Polymorphism) در جاوا به زبان ساده
-
کلاسهای داخلی (Inner Classes) در جاوا
-
کلاسها و متدهای انتزاعی (Abstract Classes and Methods) در جاوا
-
رابطها (Interfaces) در جاوا
-
آشنایی با Enum در جاوا
-
دریافت ورودی از کاربر در جاوا (Scanner)
-
تاریخ و زمان در جاوا (Java Date and Time)
-
آشنایی با ArrayList در جاوا
-
آشنایی با LinkedList در جاوا
-
مرتبسازی لیست در جاوا (Java List Sorting)
-
آشنایی با HashMap در جاوا
-
آشنایی با HashSet در جاوا
-
آشنایی با Iterator در جاوا
-
کلاسهای بستهبندی (Wrapper Classes) در جاوا
-
استفاده از try...catch برای مدیریت خطاها
-
آشنایی با عبارات منظم (Regular Expressions) در جاوا
-
آشنایی با Threads در جاوا 🚀
-
آشنایی با Lambda Expressions در جاوا
-
مرتبسازی پیشرفته در جاوا
-
آشنایی با کلمه کلیدی assert در جاوا
-
آشنایی با کلمه کلیدی abstract در جاوا
-
آشنایی با کلمه کلیدی boolean در جاوا
-
آشنایی با کلمه کلیدی break در جاوا
-
آشنایی با کلمه کلیدی byte در جاوا
-
آشنایی با کلمه کلیدی case در جاوا
-
آشنایی با کلمه کلیدی catch در جاوا
-
آشنایی با کلمه کلیدی char در جاوا
-
آشنایی با کلمه کلیدی class در جاوا
-
آشنایی با کلمه کلیدی continue در جاوا
-
آشنایی با کلمه کلیدی default در جاوا
-
آشنایی با کلمه کلیدی do در جاوا
-
آشنایی با کلمه کلیدی double در جاوا
-
آشنایی با کلمه کلیدی else در جاوا
-
آشنایی با کلمه کلیدی enum در جاوا
-
آشنایی با کلمه کلیدی exports در جاوا
-
آشنایی با کلمه کلیدی Inheritance در جاوا
-
آشنایی با کلمه کلیدی final در جاوا
-
آشنایی با کلمه کلیدی finally در جاوا
-
آشنایی با کلمه کلیدی float در جاوا
-
آشنایی با کلمه کلیدی for در جاوا
-
آشنایی با کلمه کلیدی if در جاوا
-
آشنایی با کلمه کلیدی implements در جاوا
-
آشنایی با کلمه کلیدی import در جاوا
-
آشنایی با کلمه کلیدی instanceof در جاوا
-
آشنایی با کلمه کلیدی int در جاوا
-
آشنایی با کلمه کلیدی Interface در جاوا
-
آشنایی با کلمه کلیدی long در جاوا
-
آشنایی با کلمه کلیدی module در جاوا
-
آشنایی با کلمه کلیدی native در جاوا
-
آشنایی با کلمه کلیدی new در جاوا
-
آشنایی با کلمه کلیدی package در جاوا
-
آشنایی با کلمه کلیدی private در جاوا
-
آشنایی با کلمه کلیدی protected در جاوا
-
آشنایی با کلمه کلیدی public در جاوا
-
آشنایی با کلمه کلیدی return در جاوا
-
آشنایی با کلمه کلیدی requires در جاوا
-
آشنایی با کلمه کلیدی short در جاوا
-
آشنایی با کلمه کلیدی static در جاوا
-
آشنایی با کلمه کلیدی super در جاوا
-
آشنایی با کلمه کلیدی switch در جاوا
-
آشنایی با کلمه کلیدی synchronized در جاوا
-
آشنایی با کلمه کلیدی this در جاوا
-
آشنایی با کلمه کلیدی throw در جاوا
-
آشنایی با کلمه کلیدی throws در جاوا
-
آشنایی با کلمه کلیدی transient در جاوا
-
آشنایی با کلمه کلیدی try...catch در جاوا
-
آشنایی با کلمه کلیدی var در جاوا
-
آشنایی با کلمه کلیدی void در جاوا
-
آشنایی با کلمه کلیدی volatile در جاوا
-
آشنایی با کلمه کلیدی while در جاوا
-
متد charAt() در جاوا
-
متد codePointAt() در جاوا
-
متد codePointBefore() در جاوا
-
متد codePointCount() در جاوا
-
متد compareTo() در جاوا
-
متد compareToIgnoreCase() در جاوا
-
متد concat() در جاوا
-
متد contains() در جاوا
-
متد contentEquals() در جاوا
-
متد copyValueOf() در جاوا
-
متد endsWith() در جاوا
-
متد equals() در جاوا
-
متد equalsIgnoreCase() در جاوا
-
متد format() در جاوا
-
متد getBytes() در جاوا
-
متد getChars() در جاوا
-
متد hashCode() در جاوا
-
متد indexOf() در جاوا
-
متد isEmpty() در جاوا
-
متد join() در جاوا
-
متد lastIndexOf() در جاوا
-
متد length() در جاوا
-
متد matches() در جاوا
-
متد offsetByCodePoints() در جاوا
-
متد regionMatches() در جاوا
-
متد replace() در جاوا
-
متد replaceAll() در جاوا
-
متد replaceFirst() در جاوا
-
متد split() در جاوا
-
متد startsWith() در جاوا
-
متد subSequence() در جاوا
-
متد substring() در جاوا
-
متد toCharArray() در جاوا
-
متد toLowerCase() در جاوا
-
متد toString() در جاوا
-
متد toUpperCase() در جاوا
-
متد trim() در جاوا
-
متد valueOf() در جاوا
-
متد abs() در جاوا
-
متد acos() در جاوا
استفاده از try…catch برای مدیریت خطاها
در هنگام اجرای برنامههای جاوا، ممکن است خطاهایی رخ دهد. این خطاها میتوانند به دلایل مختلفی باشند:
✅ اشتباهات برنامهنویسی (Coding Errors)
✅ ورودیهای نامعتبر از کاربر (Invalid User Input)
✅ اتفاقات غیرقابل پیشبینی (Unexpected Errors)
وقتی یک خطا رخ دهد، جاوا برنامه را متوقف کرده و یک پیام خطا نمایش میدهد. در اصطلاح فنی، جاوا یک استثنا (Exception) پرتاب میکند.
🔹 استفاده از try...catch برای مدیریت خطاها
برای جلوگیری از توقف برنامه، میتوانیم از دستورات try
و catch
استفاده کنیم.
🔹 دستور try
: کدی را مشخص میکند که ممکن است در حین اجرا دچار خطا شود.
🔹 دستور catch
: اگر در بخش try
خطایی رخ دهد، این قسمت اجرا شده و از کرش (Crash) برنامه جلوگیری میکند.
✨ ساختار کلی try...catch
try {
// کدی که ممکن است خطا ایجاد کند
} catch (Exception e) {
// کدی برای مدیریت خطا
}
🔹 مثال: خطای دسترسی به آرایه 🚨
در کد زیر، برنامه سعی دارد به اندیسی از آرایه دسترسی پیدا کند که وجود ندارد. این کار باعث خطای ArrayIndexOutOfBoundsException
میشود.
❌ کد بدون try...catch
(باعث توقف برنامه میشود)
public class Main {
public static void main(String[] args) {
int[] myNumbers = {1, 2, 3};
System.out.println(myNumbers[10]); // خطا! اندیس ۱۰ در آرایه وجود ندارد.
}
}
📌 خروجی (خطا):
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 10
✅ کد با try...catch
(مدیریت خطا و ادامه اجرای برنامه)
public class Main {
public static void main(String[] args) {
try {
int[] myNumbers = {1, 2, 3};
System.out.println(myNumbers[10]); // خطا رخ میدهد
} catch (Exception e) {
System.out.println("یک خطا رخ داده است!");
}
}
}
📌 خروجی:
یک خطا رخ داده است!
🔹 استفاده از finally برای اجرای همیشگی یک کد 🛠
🔹 بخش finally
همیشه اجرا میشود، چه خطا رخ دهد چه ندهد.
✨ مثال: استفاده از finally
public class Main {
public static void main(String[] args) {
try {
int[] myNumbers = {1, 2, 3};
System.out.println(myNumbers[10]); // خطا رخ میدهد
} catch (Exception e) {
System.out.println("یک خطا رخ داده است!");
} finally {
System.out.println("عملیات مدیریت خطا به پایان رسید.");
}
}
}
📌 خروجی:
یک خطا رخ داده است!
عملیات مدیریت خطا به پایان رسید.
🔹 ایجاد خطاهای سفارشی با throw 🚀
گاهی اوقات نیاز داریم که خودمان یک خطای خاص را ایجاد کنیم. برای این کار از throw
استفاده میکنیم.
🔹 مثال: بررسی سن برای ورود به سایت
public class Main {
static void checkAge(int age) {
if (age < 18) {
throw new ArithmeticException("دسترسی ممنوع - شما باید حداقل ۱۸ سال داشته باشید.");
} else {
System.out.println("دسترسی مجاز - خوش آمدید!");
}
}
public static void main(String[] args) {
checkAge(15); // مقدار ورودی ۱۵ است که کمتر از ۱۸ میباشد.
}
}
📌 خروجی (اگر سن کمتر از ۱۸ باشد):
Exception in thread "main" java.lang.ArithmeticException: دسترسی ممنوع - شما باید حداقل ۱۸ سال داشته باشید.
📌 خروجی (اگر سن ۲۰ باشد):
checkAge(20);
دسترسی مجاز - خوش آمدید!
🏆 تمرین: خطا را مدیریت کن!
کد زیر دارای یک خطاست. بخشهای خالی را پر کن تا برنامه بتواند خطا را مدیریت کند.
_______ {
int[] myNumbers = {1, 2, 3};
System.out.println(myNumbers[10]); // خطا رخ میدهد
} _______ (Exception e) {
System.out.println("یک خطا رخ داده است!");
}
✅ پاسخ صحیح:
try {
int[] myNumbers = {1, 2, 3};
System.out.println(myNumbers[10]); // خطا رخ میدهد
} catch (Exception e) {
System.out.println("یک خطا رخ داده است!");
}
🎯 جمعبندی
1️⃣ میتوان گفتtry...catch
برای مدیریت خطاها استفاده میشود.
2️⃣ finally
همیشه اجرا میشود، حتی اگر خطا رخ دهد.
3️⃣ throw
به ما اجازه میدهد خطاهای سفارشی ایجاد کنیم.